Используем токены для доступа к полям параграфов в 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.

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

Дополняем результаты views

Февраль 14, 2024 г.

Пример того, как можно дополнить результаты views в Drupal 9/10. Задача - вывести для статьи блок со связанными публикациями. В начале нужно было просто выводить последние статьи того же типа, а потом у заказчика возникло желание переопределять выдачу, ...

Читать

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

Май 16, 2024 г.

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

Читать

Программное создание статьи с переводом в Drupal

Август 10, 2023 г.

Допустим, вы получаете следующие данные - заголовок, текст статьи, и теги. При этом данные поставляются на двух языках - 'ru' и 'en'. Вам требуется программно сохранить статью и её перевод. Я полагаю, что уже активирован модуль Content Translation, ...

Читать

Чем заменить drupal_get_path() в Drupal 9/10

Январь 9, 2024 г.

Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода. В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию. Сервис extension.list.module - реализует функции, связанные ...

Читать
 

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

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



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