Если в коде необходимо проверить авторизовался ли текущий пользователь, то можно использовать как минимум два подхода.
Глобальная переменная 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Январь 25, 2022 г.
В Drupal 8 есть хорошая зацепка ко всей форме параграфа - hook_field_widget_WIDGET_TYPE_form_alter , а в семерке можно зацепляться за отдельные поля формы - hook_field_widget_form_alter.
Рассмотрим примеры реализации этих зацепок.
Drupal 7 ...
Читать
Октябрь 18, 2023 г.
Сущность возвращает язык в контексте выбранного языка, но иногда нужно получить оригинальный язык node или другой entity.
Вот так выглядит запрос в контексте:
[crayon-69c7e9937910d070443474/]
А так можно получить код языка оригинальной версии ...
Читать
Май 18, 2017 г.
Ситуация, когда вы используете поле типа "Multimedia asset", создаваемое модулями media + media_youtube, и сохранили там ссылку на какое то видео с Youtube ...
Читать
Август 31, 2021 г.
Рассмотрим пару кейсов, того как рендерить блок из вашего кода.
Блок существует как Entity
Вы создали произвольный блок через Manage->Structure->Block ...
Читать