Используем токены для доступа к полям параграфов в Drupal

Пара примеров о том, как вытащить нужную инфу из параграфов, используя токены. Обычно это нужно для генерации meta заголовков страницы.

У вас есть node, в которой вы создали поле field_myfield с entity_reference: paragrpahs.

Самое простое, выведем entity id:

Это будет id самого первого из параграфов, которые были созданы в данном поле. Если параграфов несколько, и вы точно знаете порядковый номер, то обратиться к нему можно вот так, например извлечем айди 3-го параграфа:

Как видите, используется нумерация, начиная с нуля.

Получить URL картинки из медиа поля параграфа, применив стиль изображения

Рассмотрим более интересный пример, а именно извлечении URL картинки из медиа поля параграфа.

Медиа entity имеет свой набор полей, пусть в нашем случае поле изображения медиа entity называется field_image. А стиль изображения называется medium. Этот стиль обычно существует по умолчанию в drupal.

Сначала получаем entity параграфа, обращаемся к полю field_media, но оно также предоставляет нам entity, у которого есть поле field_image. Далее мы применяем стиль изображения и запрашиваем url.

Мало букафф? Читайте есчо !

The installed version of the /Имя модуля/ module is too old to update

Октябрь 9, 2024 г.

При выполнении drush updb вы можете увидеть такое сообщение. Обычно это связано с обновлением модуля до следующей major версии. Тогда в модуле может быть прописан hook_update_last_removed, где прописан номер hook_update, ниже которого номерные ...

Читать

Drupal checkbox field form API

Март 18, 2024 г.

Drupal интерпретирует чекбокс как integer. Это вызывает некоторое непонимание при работе с полем через Drupal form API. Давайте рассмотрим пример объявления и чтения данных поля формы. Объявление checkbox поля в вашей форме: [crayon-692ad85612d70766887389/] ...

Читать

Как добавить css классы в attributes (twig, Drupal)

Май 16, 2024 г.

Порою требуется добавить свои классы в переменную attributes на уровне шаблона (в twig). Переменная attributes - это объект Drupal\Core\Template\Attribute. У него есть нужный нам метод - addClass(). Пример использования: [crayon-692ad85612e9f581825538/]

Читать

Транслитерация имени файла при создании медиа entity программно в Drupal

Май 21, 2023 г.

При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы. Drupal (начиная с 8.2) объявляет специальный интерфейс, ...

Читать
 

Комментарии к «Используем токены для доступа к полям параграфов в Drupal»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: