Как в Drupal 8 сгенерировать изображение с заголовком ноды?

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

Аватар пользователя chelwolf chelwolf 2 июня 2021 в 10:52

Много современных сайтов СМИ (Новая газета, Медуза и т.п.) используют в качестве картинки для постов в соцсетях заголовок материала, сгенерированный в виде изображения.

Пример:

Генерация таких картинок происходит автоматически. Если заголовок больше определённого количества символов - он обрезается на границе слова многоточием.

Вопрос - как это реализовать в Drupal 8? Image Style мне как-то может помочь?

Посмотрел в коде различных сайтов, где это реализовано, признаков какого-то стороннего сервиса не нашёл.

Комментарии

Аватар пользователя VasyOK VasyOK 2 июня 2021 в 11:07

Варианты:
1) https://www.drupal.org/project/imagefield_tokens
2) views. выведите изображение в виде урла и перепишите вывод поля с учетом alt, title и чего угодно. Во вьюхе также можно вывести заголовок ноды, который использовать для alt. А можно условия ставить через views_conditional.

Аватар пользователя chelwolf chelwolf 2 июня 2021 в 11:18

Опишите подробнее первый способ. Почитал описание модуля, он позволяет использовать токены в поле title и alt изображения, добавляет новый форматтер поля для админки. Как title перенести на изображение и сгенерировать нужную мне картинку?

Сейчас смотрю на https://www.drupal.org/project/image_gen, но пока не получил нужный результат

Аватар пользователя chelwolf chelwolf 2 июня 2021 в 11:27

да, ссылка на новость из примера: https://novayagazeta.ru/articles/2021/06/02/vlasti-ssha-rasskazali-o-voz...

Созданы картинки разного размера для Твиттера и других соцсетей.

<meta property="og:image" content="https://novayagazeta.ru/static/previews/2021/06/02/vlasti-ssha-rasskazal... data-react-helmet="true">
Аватар пользователя gun_dose gun_dose 2 июня 2021 в 11:30

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

Аватар пользователя chelwolf chelwolf 2 июня 2021 в 11:44

Использую его в работе:

https://www.drupal.org/project/metatag

Для разных соцсетей используются разные библиотеки и интеграция с ними у модуля есть (Open Graph, Twitter Cards and Dublin Core). Если подключить дополнительные опции, можно настроить и грузить изображения для таких нужд, но нам надо именно генерировать картинки с заголовком. Про это пока тоже ничего не нашёл

Пример подключения настроек модуля для Фейсбук (Open Graph)