При переходе к Drupal 8/9 на twig шаблоны, часто возникает вопрос, как проверить что поле пустое.
Наиболее точный ответ на мой взгляд помогает найти фильтр render, т.к. он позволяет получить результат рендера соответствующего поля, а не заниматься исследованием структуры данных.
|
|
{% if content.field_my_field|render %} <div class="wrapper"> {{ content.field_my_field }} </div> {% endif %} |
В некоторых ситуациях, возможно, потребуется более сложная комбинация фильтров вроде такой:
|
|
{% if content.field_my_field|render|striptags|trim is not empty %} <div class="wrapper"> {{ content.field_my_field }} </div> {% endif %} |
Drupal 8/9 twig
Данная запись опубликована в 28.01.2022 19:07 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-6a72ff0543238853050383/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать
Октябрь 3, 2021 г.
В шаблонах twig вы можете использовать функцию link, для рендера ссылки.
Параметры вызова следующие - link($text, $uri, $attributes = {}), первые два - обязательные.
[crayon-6a72ff0543483036610354/]
Результатом будет следующий HTML код:
...
Читать
Октябрь 8, 2021 г.
Привычная функция watchdog, которую мы использовали в 6/7 версиях, к девятке пережила эволюцию до сервиса логирования.
Бывшее ранее:
[crayon-6a72ff0543611335703150/]
Сейчас выглядит так:
[crayon-6a72ff0543618362195222/]
Помимо того, ...
Читать
Август 31, 2021 г.
Рассмотрим пару кейсов, того как рендерить блок из вашего кода.
Блок существует как Entity
Вы создали произвольный блок через Manage->Structure->Block ...
Читать