Встроенный твит от Twitter

Да, я заблокировал Twitter.com и x.com. Однако нативный встроенный твит не отображается. Вместо этого отображается встроенный твит от Discourse, но без изображения и видео.

Плагин работает на моём старом сайте с версией 3.2.0, но не работает на новом сайте с версией 3.3.0.

После того как я отредактировал сам пост, всё заработало. Интересно.

2 лайка

После обновления Discourse этот компонент снова перестал работать.

Кто-нибудь сталкивался с этим и нашёл обходное решение?

У меня та же проблема. Этот компонент не работает в моей версии Discourse 3.5.0.beta9-dev. Кто-нибудь может помочь? Спасибо.

Приходите сюда, чтобы сказать то же самое. Этот компонент сломан.

Этот компонент темы всё ещё работает на моей абсолютно последней версии форума.

Он не сломан. Может быть, стоит проверить, нет ли ошибки в конфигурации?

2 лайка

У меня на Discourse тоже всё работает отлично (тоже на последней версии).

У меня тоже всё работает отлично на последней версии Discourse.

Я сделал форк репозитория, и он вроде заработал (он опубликовал тот же твит около 8 раз), но я просто откатился к вашему компоненту. В любом случае, мне всё равно не удалось заставить это работать; также я отключил практически все компоненты, но это не помогло.

Этот компонент отлично работает в моём старом форуме версии 3.4.6. Та же самая конфигурация. Но он не работает в версии 3.5.0.beta9-dev.

Я только что обновился до версии 3.5.0.beta9-dev, и у меня всё ещё работает. Знаю, что это не очень помогает, но я не думаю, что проблема в Discourse.

Для нас предпросмотры Twitter работали без этого решения как минимум до нескольких недель назад. Не совсем понятно, связана ли эта проблема с новой версией. Остаётся ли это общепринятым способом обеспечения работы предпросмотров ссылок Twitter?

Я попытался установить плагин и настроить его согласно инструкции, но столкнулся с препятствием.

Когда я попытался добавить https://platform.twitter.com в настройку script src политики безопасности контента, получил следующую ошибку:

Произошла ошибка: content_security_policy_script_src: Значение должно быть либо 'unsafe-eval', либо 'wasm-unsafe-eval', либо иметь вид '-', где поддерживаемые алгоритмы хеширования — sha256, sha384 или sha512. Убедитесь, что ваш ввод заключён в одинарные кавычки.

Всем привет… просто проверяю, удалось ли уже решить эту проблему или найти решение?

Сейчас у меня версия 3.5.2, и если использовать x.com, то это не работает, но если изменить на twitter.com, то всё работает!

1 лайк

Настройка «Блокировать onebox при перенаправлении» исправила это для меня

1 лайк

У меня то же самое. Было бы здорово, если бы x.com работал, но хотя бы это всё ещё актуальное решение в декабре 2025 года.

@ZeroDean

Если вы заблокируете onebox-домены x.com через «Blocked onebox domains» и включите опцию «Block onebox on redirect», компонент должен заработать (я только что протестировал это на самохостинговом сайте):


4 лайка

Спасибо, @Lilly! Особенно ценю инструкции и визуализацию.

Похоже, работает на новых постах. На старых, похоже, не влияет (странно). Но, возможно, это проблема кэша. Узнаю позже.

Спасибо ещё раз.

Вы можете очистить кэш и пересобрать в Rails следующим образом (вероятно, разумно сначала создать резервную копию).
Или вы можете подождать 24 часа, пока не истечёт срок действия кэша onebox.

# Войти в консоль Rails
./launcher enter app
rails c
# Из консоли Rails

# 1. Очистить кэш onebox из Redis
Discourse.redis.keys("*onebox*").each { |key| Discourse.redis.del(key) }

# 2. Пересобрать сообщения с twitter.com
Post.where("raw LIKE ?", "%twitter.com%").find_each { |post| post.rebake! }
4 лайка

Спасибо, @Lilly. Я сейчас на хостинге, поэтому у меня нет доступа к rails. Мне не проблема подождать 24 часа. Но это точно хорошая информация! :raising_hands:

2 лайка