Метод работает не только с ролями, но и любой другой логикой, которую вы в силах реализовать в коде.
Нам понадобится hook_views_pre_render, где мы выполним проверку и отключим не нужное нам поле представления.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
use Drupal\views\ViewExecutable; /** * Implements hook_views_pre_render. */ function MYMODULE_views_pre_render(ViewExecutable $view) { if ($view->id() == 'ИМЯ ВАШЕГО ПРЕДСТАВЛЕНИЯ') { // получим роли текущего пользователя $current_user = \Drupal::currentUser(); $roles = $current_user->getRoles(); if (!in_array('administrator', $roles)) { // и если это, например, не админ, отключим показ поля // с именем MY_VIEW_FIELDNAME unset($view->field['MY_VIEW_FIELDNAME']); } } } |
Все имена полей можно вывести, используя devel:
Drupal 9/10 модуль views
Данная запись опубликована в 31.08.2023 17:07 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июнь 1, 2023 г.
В TWIG уже много разных встроенных фильтров, Drupal их перечень только расширяет. Но наше счастье было бы не полным, если бы мы не могли добавить свои фильтры.
В Drupal это делается через сервис twig.extension.
Для начала надо сформировать описатель, ...
Читать
Май 6, 2023 г.
С 8й версии друпал предлагает механизм переопределения/задания хлебных крошек через реализацию сервиса breadcrumb_builder.
Немного теории
При создании хлебных крошек, Drupal вызывает объявленные сервисы в порядке их приоритетов, и опрашивает ...
Читать
Июль 14, 2023 г.
Как без хуков preprocess в Drupal добавить, например, атрибут target для ссылки в шаблоне?
Например, возьмем штатный шаблон file-link.html.twig:
[crayon-6a37e626a8be0679637342/]
Используем фильтр merge, добавляя нужные атрибуты:
[crayon-6a37e626a8be6918517988/]
Читать
Июнь 9, 2023 г.
Рассмотрим два варианта, как зацепиться к отправляемым письмам и внести туда свои изменения.
Первый вариант заключается в прямом изменении тела письма перед отправкой. Для этого мы реализуем hook_mail_alter(&message).
MAIL ALTER хук
Переменная ...
Читать