Как вставлять посты с twitter и facebook в CKEditor?

Главные вкладки

Аватар пользователя VasyOK VasyOK 15 июня 2022 в 13:47

Всем привет. Кто практикует вставку постов с twitter и facebook в CKEditor?
Поставил модуль ckeditor_oembed. С ним:

Twitter

  • на локалке под docker4druapal все работает
  • на реальном сервере нажимаю на кнопку сохранить при вставке ссылки на твит - ничего не происходит.

В консоли появляются ошибки:
1.

POST http://sitename.com/admin/ckeditor_oembed/tweet_embed/full_html?_wrapper_format=drupal_modal&ajax_form=1&_wrapper_format=drupal_ajax
[HTTP/1.1 500 500 Service unavailable (with message) 150ms]

2.

Uncaught
Object { message: "\nВозникла AJAX HTTP ошибка.\nПолученный код HTTP: 500\nСледует отладочная информация.\nПуть: /admin/ckeditor_oembed/tweet_embed/full_html?_wrapper_format=drupal_modal&ajax_form=1\nТекст Состояния: 500 Service unavailable (with message)\nТекст Ответа: На сайте произошла непредвиденная ошибка. Пожалуйста, повторите попытку позже.", name: "AjaxError", stack: "@http://sitename.com/core/misc/ajax.js?v=9.3.16:110:32\n@http://sitename.com/core/misc/ajax.js?v=9.3.16:674:3\n" }

message: "\nВозникла AJAX HTTP ошибка.\nПолученный код HTTP: 500\nСледует отладочная информация.\nПуть: /admin/ckeditor_oembed/tweet_embed/full_html?_wrapper_format=drupal_modal&ajax_form=1\nТекст Состояния: 500 Service unavailable (with message)\nТекст Ответа: На сайте произошла непредвиденная ошибка. Пожалуйста, повторите попытку позже."

name: "AjaxError"

stack: "@http://sitename.com/core/misc/ajax.js?v=9.3.16:110:32\n@http://sitename.com/core/misc/ajax.js?v=9.3.16:674:3\n"

<prototype>: Error:
ajax.js:110:32

Facebook

Не работает ни на локалке ни на сервере. При попытке вставки пишет
POST http://sitename.com/admin/ckeditor_oembed/fb_embed/full_html?_wrapper_format=drupal_modal&_wrapper_format=drupal_ajax&ajax_form=1

Формат ввода full_html. Ограничения на теги нет.
Ссылки на посты, которые хочу вставить:

https://twitter.com/FCBarcelona/status/1536695202014011393
https://www.facebook.com/barcamania/posts/7269173616456842

Или посоветуйте другой модуль.

Комментарии

Аватар пользователя VasyOK VasyOK 15 июня 2022 в 21:01

Нет доступа до логов сервера. Может вызвоню его повелителя. Журнал событий Друпала подойдет?
Это как-то прояснит (?):

Сервер twitter:
GuzzleHttp\Exception\ConnectException: cURL error 35: Encountered end of file (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) in GuzzleHttp\Handler\CurlFactory::createRejection() (line 200 of /home/my_name/domains/sitename.com/vendor/guzzlehttp/guzzle/src/Handler/CurlFactory.php).

d4d Facebook:
GuzzleHttp\Exception\ClientException: Client error: `GET https://www.facebook.com/plugins/post/oembed.json/?url=https%3A%2F%2Fwww.facebook.com%2Fbarcamania%2Fposts%2F7269173616456842&maxwidth=500&omitscript=1` resulted in a `400 Bad Request` response: This endpoint is deprecated, please go to https://developers.facebook.com/docs/plugins/oembed to learn how to migrate yo (truncated...) in GuzzleHttp\Exception\RequestException::create() (line 113 of /var/www/html/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php).

Аватар пользователя marassa marassa 16 июня 2022 в 16:50

С твиттером понятнее не стало. Фейсбук явно ругается на обращение к устаревшему endpoint'у и даже дает ссылку на документацию по новым endoint'ам.
Похоже, мейнтейнеры модуля просто не отслеживают изменения API сервисов - последнее обновление модуля было за год до последнего изменения фейсбучьего API. Я бы искал альтернативу. Но запостить issue на орг тоже не помешает.