В Webform для Drupal 7 нет отдельного типа элемента, который отвечал бы за одиночный чекбокс. Если возникает задача добавить в форму знакомую всем галочку «Согласие на обработку персональных данных», то стандартного решения в виде поля checkbox вы не найдёте.
Читать далее »Все записи категории ‘Drupal’
Проброс переменных из PHP в JS (в Drupal) с использованием js_settings_alter
В этой статье мы рассмотрим, как пробросить данные из PHP в JavaScript в Drupal 11 с использованием js_settings_alter(). Этот метод позволяет изменять или добавлять переменные в объект drupalSettings, который доступен в JavaScript на всех страницах.
Генерируем UUID прямо в шаблоне
Понадобилось мне сгенерировать уникальный код, чтобы привязать уникальные стили к конкретному контейнеру. Функция random в twig чаще всего достаточна для этой цели. Но хотелось пойти немного дальше, и вытащить сервис генерации UUID.
Twig-функция qr_code() в Drupal: простой плагин с использованием Endroid QR Code

Иногда в шаблоне Drupal удобно вывести QR-код прямо по месту — без внешних файлов, без рендеринга через отдельный контроллер и без подключения сторонних сервисов. Например, чтобы вставить ссылку на страницу, код подтверждения, номер заказа или любую короткую строку. Это можно сделать всего несколькими строками, добавив к Twig собственный фильтр |qrcode.
Табличное редактирование мультиполей в Drupal через Paragraphs и Field Group
Иногда при работе с Drupal возникает необходимость оформить ввод набора однотипных данных — например, списка характеристик, параметров или цен — не в виде длинного списка полей, а в виде таблицы.
Читать далее »Drupal: как получить список target_id из ссылочного поля без перебора массива
При работе с сущностями в Drupal нередко возникает задача: из ссылочного поля (entity reference) нужно достать список ID связанных объектов.
Как в шаблоне параграфа получить заголовок родительской ноды
Иногда возникает задача: в Twig-шаблоне параграфа (paragraph.html.twig) нужно отобразить заголовок материала (ноды), к которому этот параграф прикреплён.
Drupal: возврат страницы из контроллера с установкой cookie и использованием шаблона темы
В Drupal контроллеры чаще всего возвращают Renderable-массивы. Такие массивы автоматически проходят через систему рендеринга и подставляются в базовый шаблон темы (page.html.twig). Но иногда бывает нужно получить полный Response с темизацией вручную — например, когда дополнительно требуется работать с заголовками, cookie или особыми параметрами ответа.
Как полностью удалить поле в Drupal, если оно «зависло» в хранилище полей
Иногда в Drupal возникает ситуация: вы удаляете поле с типов сущностей (bundle), но оно не исчезает полностью из системы. UI говорит, что поле «используется», хотя на самом деле ни одна сущность его не использует. В этом случае поле остаётся в конфигурации как FieldStorageConfig.
Разберёмся, как удалить такое «висящее» поле.
Читать далее »Форматирование дат в Twig на Drupal 10/11: date и format_date() с примерами
В Drupal 10/11 при работе с шаблонами Twig часто требуется вывести дату в нужном формате — будь то текущая дата, дата из поля сущности или timestamp. Для этого можно использовать стандартный Twig-фильтр date, а также функцию format_date().
В этой статье разберём основные варианты с примерами, в том числе:
- использование форматов из админки
/admin/config/regional/date-time. - получение текущего timestamp;
- вывод даты в любом формате PHP;
- локализация с помощью
format_date(); - работа с датами в ISO-формате;