Виджеты Twitter перестали работать

Здравствуйте, несколько дней назад на нашем форуме Discourse перестали работать вставки из Twitter, из-за чего приходится кликать на каждый твит, и нельзя сначала увидеть краткое содержание.

Сейчас они выглядят так:
image

Если кто-то знает, в чём проблема и как это исправить?

Мне кажется, что это связано с данной проблемой.

Компания планирует отключить оригинальную устаревшую версию оформления сайта 1 июня 2020 года.

Мой сайт тоже сталкивается с этой проблемой. То же самое происходит и с другим сайтом, где я состою.

Попробуем один:

Можете найти пример твита, который не встраивается на try.discourse.org?

Вот что не отображается на моем сайте:

Я использую последнюю версию:

Ссылка на сообщение, где оно не отображается:
https://forums.agent49.net/t/d1-conference-adjustments-sports-being-canceled-thread/409/91?u=agent49

Этот, по ссылке, у которого та же проблема на сайте, который я использую.

Вот ещё один пример, который здесь встраивается нормально, но, похоже, не на нашей доске.

Проверив панель администратора, мы видим, что у нас не последняя версия. Были ли какие-либо изменения между этими двумя версиями, которые могли бы привести к исправлению?

В настоящее время все теги Open Graph отсутствуют в Twitter, за исключением одного:

<meta property="og:site_name" content="Twitter" />

Боюсь, что ничего нельзя сделать, разве что использовать какой-то загадочный API или что-то в этом роде, специально для Twitter Oneboxes.

Похоже, Twitter действительно удалил теги OpenGraph. Если вы включите расширенные встраивания на своём сайте, у нас есть способ обойти это.

Подтверждено через http://www.opengraphtester.com/test/:

Спасибо, попрошу администратора протестировать это для нас, когда у него будет время сегодня.

Спасибо, кажется, всё сработало. Единственная проблема — видео не встраиваются, но вы всё равно видите автора твита и описание, так что это не страшно.

Спасибо, у меня это тоже сработало.

Даже с существующим обходным решением, на мой взгляд, имеет смысл добавить несколько пользовательских правил onebox, чтобы это не выглядело таким сломанным из коробки.

Я попробовал реализовать описанное выше, но всё равно вижу только скобки.

У меня та же проблема. Обходной путь не работает для моего форума.

Ах, теперь всё работает, за исключением нескольких исторических ссылок. Думаю, что что-то закэшировано на форуме, я поищу способ обновить кэш для них.

То же самое… Мне нужно научиться терпению… :smiley:

Я написал об этом изменении в форумах Twitter, посмотрим, появится ли что-то полезное

Полагаю, это изменение было сделано для экономии времени рендеринга на их серверах, поскольку теги теперь заполняются только React во время клиентского рендеринга. Это делает их HTML статичным, позволяя им использовать Architecture  |  web.dev, что значительно ускоряет рендеринг веб-приложений.

Привет, у нас есть обходное решение!

# стандартный вызов
➜  ~ curl https://twitter.com/TwitterSupport/status/1267105441278033920 -s | grep og:
<meta property="og:site_name" content="Twitter" />

# специальный user agent
➜  ~ curl https://twitter.com/TwitterSupport/status/1267105441278033920 -s -H "User-Agent: DiscourseBot/1.0" | grep og:
    <meta  property="og:type" content="article">
    <meta  property="og:url" content="https://twitter.com/TwitterSupport/status/1267105441278033920">
    <meta  property="og:title" content="Twitter Support on Twitter">
    <meta  property="og:image" content="https://pbs.twimg.com/profile_images/1266884366279471105/OTps6MBS_400x400.jpg">
    <meta  property="og:description" content="“Чтобы следить за событиями в реальном времени, нажмите на ✨ в правом верхнем углу вашей ленты «Главная», чтобы переключиться с отображения лучших твитов на самые свежие.”">
    <meta  property="og:site_name" content="Twitter">

Можем ли мы это использовать, @techAPJ?

Определённо, это очень помогает! :heart_eyes:

Завтра с самого утра я обновлю движок onebox для Twitter. :memo: