Как проверить роль пользователя (user role) в Drupal 7?

Модуль user предоставляет довольно неудобную функцию, которая проверяет роль пользователя по Role-ID, а не по названию роли.

Код и описание функции (из /modules/user/user.module):

Проблема в том, что роли пользователей имеют суррогатный числовой ключ, по которому и производится сравнение. Было бы удобнее работать в данном случае с ключом — стоковой константой. Говорят, в 8ке это уже изменили.

Для 7ки можно использовать свой вариант функции (добавьте в ваш модуль или статический класс):

Эта функция принимает для проверки имя роли.

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

Drupal: возврат страницы из контроллера с установкой cookie и использованием шаблона темы

Сентябрь 12, 2025 г.

В Drupal контроллеры чаще всего возвращают Renderable-массивы. Такие массивы автоматически проходят через систему рендеринга и подставляются в базовый шаблон темы (page.html.twig). Но иногда бывает нужно получить полный Response с темизацией вручную — ...

Читать

Ошибка в Drupal: once is not a function

Май 8, 2023 г.

В Drupal 9/10 нет jQuery плагина once(), потому при использовании этой функции вы увидите сообщение о том, что once - не является функцией. Плагин удобен, но его не сложно заменить в коде буквально парой вставок. Он работает по следующему алгоритму ...

Читать

Изменить http код ответа для кастомной страницы

Октябрь 30, 2023 г.

Когда вы создаёте свою страницу, используя контроллер, то возможности тут же выбрать какой код ответа она возвращает нет. Контроллер занимается только формированием содержания страницы. Таким образом, страница возвращается с кодом 200. Что делать, ...

Читать

Подключаем fancybox в Drupal 6

Сентябрь 1, 2013 г.

Fancybox - известный плагин jQuery для создания эффекта "просмотра в окошке". Давайте подключим его в 6-ю версию Drupal. Ряд "деятелей" предлагают поставить для этой цели, кроме самой библиотеки, ещё два плагина - jquery_update и fancybox. Определенный ...

Читать
 

Комментарии к «Как проверить роль пользователя (user role) в Drupal 7?»

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



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