Я осмотрелся, но не смог найти ответа.
Я попробовал поделиться несколькими темами с этого форума на Facebook в качестве теста, но ни одна из них не отображает изображение. Вот ошибки, которые я получаю:
Указанный URL og:image
https://d11a6trkgmumsb.cloudfront.net/optimized/4X/e/0/4/e04203d665f3ff3540361fdeedb76df8cf37df9b_2_1024x767.jpeg не может быть обработан как изображение.
Возможно, оно повреждено или имеет недопустимый формат.
Не удалось преобразовать имя хоста в корректный IP-адрес.
Кому-нибудь повезло делиться темами, и Facebook корректно отображает изображение?
Я немного запутался из-за изображения, которое вы поделили…?
Насколько мне известно, у Facebook даже нет «поддержки».
Но, похоже, это не проблема Facebook, потому что на моей собственной установке Discourse некоторые изображения отображаются. Поэтому я просто хочу узнать, каков процесс их включения? Это первое изображение в теме? Если да, то почему эта тема с этого самого форума не работает (как и другие, которые я пробовал), а у меня — работает?
Это URL-адрес изображения, на который вы ссылались в первом посте.
Порядок действий для этого процесса следующий:
Пользователь публикует URL-адрес темы в Facebook
Facebook получает URL-адрес темы и анализирует теги Open Graph
Facebook определяет URL-адрес тега og:image
Facebook пытается получить URL-адрес тега og:image
Facebook преобразует имя хоста URL-адреса в IP-адрес
Facebook подключается к IP-адресу
Facebook загружает URL-адрес
Если система пытается получить URL-адрес https://d11a6trkgmumsb.cloudfront.net/optimized/4X/e/0/4/e04203d665f3ff3540361fdeedb76df8cf37df9b_2_1024x767.jpeg, но выдает ошибку Could not resolve the hostname into a valid IP address. (Не удалось преобразовать имя хоста в действительный IP-адрес), то Discourse не участвует на этом этапе процесса. Это серверы Facebook пытаются преобразовать имя хоста Amazon Cloudfront.
Я просто хотел узнать, нет ли проблемы с тем, как Discourse выбирает изображения и устанавливает og:image. Но если мой Discourse работает (хоть и не на 100% идеально), то, возможно, проблема в том, о чём вы сказали.
Так что мой вопрос остаётся прежним: выбирается ли всегда верхнее изображение в теме? Так ли устроен Discourse? Или изображение выбирается случайно? Есть ли какие-то особые требования к выбору изображения, например, по размерам и т.д.? Просто хочу убедиться, что когда дело доходит до моих собственных тем, если я захочу добавить изображения, я буду форматировать их правильно.
Возможно, это не лучшее место для краткой документации, но вы можете использовать подсказку |thumbnail в Markdown-разметке изображения, чтобы выбрать другое миниатюрное изображение:
Спасибо большое за подсказку. Я об этом не знал.
А как насчёт размеров изображений? Есть ли какие-то требования? Или будет использоваться любое изображение, даже если оно исказится при изменении размера?
РЕДАКТИРОВАНИЕ: Я только что заметил, что это компонент… значит, мне нужно установить компонент, чтобы решить, какое изображение будет использоваться OpenGraph? Я немного запутался, извините.
Я не уверен, но, кажется, можно использовать любое изображение, а изменение размера — на усмотрение потребителя. Например, я только что протестировал маленькое изображение на try, давайте посмотрим на его Onebox:
Действительно, немного запутанно: логика |thumbnail полностью реализована в ядре, а компонент темы лишь запрашивает у ядра генерацию дополнительных размеров миниатюр и использует их в списке тем. Это оказалась единственная тема (насколько мне известно), содержащая эту информацию, поэтому и цитата.
Спасибо за разъяснения. Я точно установлю этот компонент, так как это функция, которую я очень хочу использовать в некоторых категориях. Также я проверил похожий компонент — Topic Cards. У него тоже есть свои преимущества.