Плагин вывода og:image на основе дополнительного поля в DLE

📅 {date}👁️ {views} просмотров📁 {category}

Плагин вывода og:image на основе дополнительного поля в DLE

📅 19.02.2021👁️ 3941 просмотров📁 Наши разработки | Плагины для DLE
🏷️ Теги: og:image, плагин, DLE14, Open Graph


Разметка Open Graph уже реализована в движке DLE и работает правильно, но только до тех пор, пока вы используете вставку картинок в тело новости. Если в вашей публикации картинки выводятся через дополнительные поля - то метатег og:image предназначенный для вывода ссылки на изображение оказывается пустым. И при репостинге ссылок на вашу страницу сайты не отображается картинка с сайта. Для исправления этой проблемы подойдет плагин Своя картинка в og:image в полной новости

Стандарт Open Graph разработан социальной сетью Facebook. Он позволяет контролировать превью, которое формируется при публикации ссылки на сайт в социальных сетях, и передавать информацию другим интернет-сервисам.
Разметку Open Graph используют Facebook, Вконтакте, Google+, Twitter, LinkedIn, Pinterest и другие сервисы. В Яндексе Open Graph используется для передачи данных в сервис Яндекс.Видео.

Пример кода генерируемого DLE для новостей.




В данном случае нас интересует только og:image
og:image — здесь указываем, какую картинку нужно подтянуть к публикации при репосте. В атрибуте content указывается URL изображения. Обратите внимание! При использовании разметки изображение может даже не находиться в статье или на странице. Его можно разместить в любой директории сайта, а в теге og:image указать ссылку на него. При репосте соцсети проигнорируют картинки на странице, а подтянут указанное изображение из нужной директории.
Плагин позволяющий указать название свое дополнительного поля для использования в разметке og:image основан на примере с форума поддержки https://forum.dle-news.ru/topic/72594
Но вместо ручной правки исходником нами добавлена возможность указывать название своего поля через стандартный интерфейс админки сайта.
Перейдите в раздел Настройки скрипта -> Настройки системы -> Общие
в нем найдите пункт Указать название дополнительного поля картинки для og:images

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

Скачать плагин:
[attachment=67:ogimage_v2_1.xml]

PS:
Про микроразметку статей так же имеет смысл прочитать статью https://habr.com/ru/company/click/blog/492258/

Как быть с размерами картинок
У каждой соцсети есть свои требования к размеру картинок. По-хорошему, под каждую соцсеть нужно готовить отдельное изображение с подходящими размерами. Например, вы публикуете на сайте статью, которую планируете репостить в три соцсети: Твиттер, Фейсбук и ВКонтакте. Для каждой соцсети готовите отдельную картинку. Чтобы каждая соцсеть загрузила именно «свою» картинку, необходимо указать в разметке Open Graph следующие теги:

vk:image
fb:image
twitter:image
При репосте во ВКонтакте соцсеть учтет только тег vk:image, а остальные проигнорирует. Точно так же поступят и остальные соцсети.