Если в коде необходимо проверить авторизовался ли текущий пользователь, то можно использовать как минимум два подхода.
Глобальная переменная user
GLOBALS[‘user’] в Drupal хранит объект текущего пользователя, расширенного информацией о ролях пользователя. Для анонимов код такого пользователя равен нулю (uid = 0) и обладает соответствующей ролью — anonymous user.
|
|
if ($GLOBALS['user'] > 0) { // действия, касающиеся авторизованного пользователя } |
Функция API Drupal user_is_logged_in()
В Drupal API реализована специальная функция, которая выполняет проверку текущего пользователя, так что необходимости прямой проверки глобальной переменной user нет. Функция вызывается без каких либо параметров и возвращает boolean значение TRUE, если пользователь авторизовался на сайте, и FALSE — если мы имеем дело с анонимным пользователем.
|
|
if (user_is_logged_in()) { // действия, касающиеся авторизованного пользователя } |
Данная запись опубликована в 13.11.2017 17:43 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Апрель 3, 2024 г.
Ранее подход, который я опишу, использовался для nodequeue, сейчас с заменой плагина фунционалом entityqueue, тоже самое можно применить и для него.
Проблема:
Создано представление (view), где источник данных - элементы datasource Search API. ...
Читать
Июль 1, 2018 г.
Хоть CKEditor и позволяет редактировать тексты, но редакторов сложно приучить готовить их сразу на сайте. Потому первая ревизия текста обычно появляется ...
Читать
Сентябрь 23, 2016 г.
Что делать, если запуск Cron в Drupal 6 постоянно выдаёт такую ошибку - "Cron run failed."?
Смотрим, как возникает данная ситуация в библиотеке /includes/common.inc . Функция drupal_cron_run() использует флаг для блокировки одновременного запуска:
[crayon-6a24c7e6b9e83972055230/] ...
Читать
Декабрь 24, 2017 г.
Если вы практикуете вызов и рендеринг объектов views из кода, то возможно вам пригодится следующий пример задания значения контекстного фильтра напрямую из вашей программы.
Программное задание значений фильтров я уже рассматривал ранее. Принцип ...
Читать