Как перенаправить закрепленную тему на внешний URL?

Привет! Я хочу отобразить закрепленную тему на своем форуме, которая при клике будет перенаправлять на внешний URL.

Я пробовал настроить это в параметрах постоянных ссылок (Permalinks) и с помощью этого кода JavaScript:

    if(window.location.href === "https://x.com/1") 
    {
       window.location.replace("https://y.com/");
    }
</script>

В обоих случаях это не работает, когда тема открывается из форума. При клике загружается обычный URL темы, но если обновить страницу темы, находясь на ней, тогда происходит перенаправление на внешний URL :thinking:

Как мне заставить это работать правильно, чтобы при клике на определенную тему происходило перенаправление на другой URL?

Спасибо, мне пока очень нравится Discourse! :slight_smile:

Похоже, вам придётся изменить URL напрямую для самой темы в разделе категорий. Тогда она будет вести сразу на внешний URL — это также сэкономит шаг: не нужно будет сначала кликать и загружать тему, а затем кликать по ней второй раз. Надеюсь, кто-нибудь из команды Discourse откликнется, если это может нарушить работу отображения категорий и их соответствующих URL.

Привет, извините, но я не совсем понимаю, что вы имеете в виду. Не могли бы вы ещё раз объяснить, какие шаги нужно выполнить?

Конечно, без проблем.

  1. Сначала перейдите в тему, для которой вы хотите создать перенаправление на внешний URL;
  2. Создайте пост с любым текстом, который вы хотите, вместе с внешним URL;
    2a (Опционально: Если во внешнем URL есть графический заголовок, вы можете использовать Onebox для URL в своём первом посте, что обеспечит визуальную поддержку вашей внешней ссылке.)
  3. Закрепите этот пост глобально (он всегда будет оставаться вверху списка постов в этой теме); и в качестве опции,
  4. Если вы не хотите/не ожидаете новых постов в этой теме, закройте тему также.

Таким образом, вы вряд ли сломаете какие-либо ссылки на тему внутри Discourse, и у вас будет ваш внешний URL всегда вверху, когда пользователи переходят в эту тему.
Редактирование: Глобальное закрепление также должно держать эту тему вверху списка, когда пользователь нажимает на «Последние». :wink: