Проверить заданный permission у пользователя в Drupal

В Drupal (7) новые флажки — права пользователей добавляются через hook модуля MODULENAME_permission.

В зацепке вы формируете массив описаний прав, который возвращаете при выходе из функции. Пример:

После того, как вы создали в своём модуле дополнительные права (permissions), в коде вы можете использовать функцию API user_access() для проверки флажка.

Если требуется проверить не текущего пользователя, а какого то другого, то объект $user, нужно передать вторым параметром в user_access().

Система прав в Drupal построена на основе ролей, права выдаются не напрямую пользователям, а в соответствии с их ролями. Потому чтобы выдать permissions пользователю, надо отредактировать набор прав выданной ему роли.

/admin/people/permissions/roles

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

Attempting to re-run cron while it is already running.

Июнь 3, 2025 г.

Попытка запустить cron параллельно с запущенным кроном не увенчается успехом, так как Drupal использует блокировку. Но иногда, из-за ошибок во время исполнения, блокировка не снимается. Что делать, если блокировка не была снята штатно? На самом ...

Читать

Убираем пустые категории из фильтра во views

Сентябрь 13, 2023 г.

Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю. Также весьма часто некоторые дополнительные ...

Читать

Подключаем yandex cloud как s3 в Drupal

Апрель 3, 2025 г.

Облачные файловые хранилища Яндекса можно подключить и использовать в вашем проекте на drupal через модуль s3fs. А именно, хранить там т.н. юзерфайлы, ...

Читать

Подтвержение регистрации через СМС в Drupal

Январь 19, 2014 г.

На мой взгляд, это и новый виток в войне с ботами и предвестник авторизации в будущем. Сегодня практически у каждого есть сотовый телефон, а в будущем ...

Читать
 

Комментарии к «Проверить заданный permission у пользователя в Drupal»

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



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