Проверить роль пользователя в twig

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

Например, вы желаете показывать какой-то элемент шаблона, только для пользователя с специфической ролью:

Если переменная user не передана в шаблон, то можно добавить её через соответствующий препроцессор шаблона, или добавить функцию вроде is_role(‘USER_ROLE’) в TWIG.

В Drupal кастомные функции в TWIG можно добавить через описание своего сервиса типа  twig.extension.

Для начала надо сформировать описатель, который подскажет какой класс в нашем модуле будет описывать расширение сервиса. Пусть модуль называется my_module.

Тогда нам нужно создать файл
/modules/custom/my_module/my_module.services.yml:

Он говорит, что наш класс CustomTwig выполняет роль расширения TWIG. Понятно, что у модуля должен быть еще и обязательно файл-описатель самого модуля — my_module.info.yml.

Класс, согласно PSR-4, должен находится в
/modules/custom/my_module/src/Twig/CustomTwig.php файле.
Вот так я добавил функцию is_role:

После сброса кешей, функцию можно будет использовать в шаблонах:

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

Запросы с группировкой в Drupal

Август 21, 2023 г.

DB API в drupal позволяет стоить, наверное, почти любые запросы, какие только можно составить на чистом sql. Приведенный ниже сниппет кода демонстрирует ...

Читать

Drupal deployment

Май 18, 2023 г.

Шпаргалка по настройке и проведению деплоймента для Drupal (начиная с 8й версии). Деплоймент выполняется с использованием git, drush, composer и configuration management. На сервере должны выполняться команды в следующей последовательности: ...

Читать

Работа с config split модулем в Drupal

Март 16, 2024 г.

Задача модуля - дать возможность разделить конфигурации сайта для разных системных окружений. На локальном сервере вы можете использовать такие модули ...

Читать

Использование контекста публикации во views

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

У вас есть публикация и в ней задана категория (таксономия). Задача - использовать значение выбранной категории во view, которая отображается на данной ...

Читать
 

Комментарии к «Проверить роль пользователя в twig»

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



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