Метод работает не только с ролями, но и любой другой логикой, которую вы в силах реализовать в коде.
Нам понадобится 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Май 17, 2023 г.
Выпиливаем мета-тег Generator из заголовочной секции сайта на Drupal. За одно и пару других лишних мета маркеров.
Для этого используем hook_page_attachments_alter в теме оформления сайта. 'Generator' в списке мета информации идет под именем system_meta_generator. ...
Читать
Сентябрь 6, 2023 г.
Пример кода, реализующий endpoint скачиваемого файла.
[crayon-6aa870e44efe3110261068/]
Кроме контроллера, вам потребуется еще задать маршрут. Пример описания маршрута:
[crayon-6aa870e44efeb581673985/]
Читать
Июль 2, 2025 г.
Drupal — мощная, гибкая и в то же время довольно сложная CMS. Один из важных аспектов SEO и удобства пользователей — это ЧПУ (человекопонятные URL). В ...
Читать
Июль 23, 2023 г.
В терминологии Drupal, типы товаров это - бандлы (bundle) сущности commerce_product.
Получить их список можно вот так:
[crayon-6aa870e44f1b7290287622/]
Как результат, в $product_types вы получите массив типов товаров, где ключом является ...
Читать