Редирект на нужную страницу после отправки данных формы в Drupal

Задача может по разному формулироваться, но решение одно и тоже. К примеру, как сделать так, чтобы после авторизации пользователь попадал на нужную страницу? или как сделать так, чтобы после регистрации пользователь перешел на определенную страницу сайта?

В друпал предусмотрен помимо внутреннего механизма (form_hook), где можно реализовать вообще любые смелые фантазии по изменению работы существующих форм, но ещё и внешний механизм для настройки редиректа после успешной отправки данных. Достаточно в url, где находится форма добавить параметр destination с указанием нужной вам страницы сайта. Адрес должен принадлежать множеству адресов страниц сайта или их синонимов.

Вот несколько примеров.

Переход на нужную страницу после авторизации

Выполнив переход по ссылке /user/login?destination=node/5, и произведя авторизацию, мы попадем на страницу node/5 (если, конечно, она существует).

Редирект на нужную страницу после регистрации пользователя

Аналогично предыдущему примеру, в качестве ссылки для регистрации пользователя нужно использовать конструкцию вроде /user/register?destination=node/5. Это даст требуемый результат.

Редирект на требуемую страницу после выхода пользователя из своего профиля

Забавно, но этот подход работает и тут. Нужно лишь составить адрес вроде следующего /logout?destination=node/5.

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

Проброс переменных из PHP в JS (в Drupal) с использованием js_settings_alter

Ноябрь 14, 2025 г.

В этой статье мы рассмотрим, как пробросить данные из PHP в JavaScript в Drupal 11 с использованием js_settings_alter(). Этот метод позволяет изменять или добавлять переменные в объект drupalSettings, который доступен в JavaScript на всех страницах. ...

Читать

Что использовать вместо mysql_escape_string() в Drupal 7?

Сентябрь 6, 2016 г.

Начиная с версии PHP 4.3.0, функция mysql_escape_string() считается устаревшей. PHP будет выдавать соответствующее предупреждение. Deprecated function: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead. Т.е. ...

Читать

Переадресация на основной домен в Drupal

Июль 17, 2023 г.

Данный подход скорее полезен как демонстрация инструментария, чем действительно реализация редиректа на основной домен. Потому что лучше это делать средствами сервера, а не ПО, чтобы уменьшить нагрузку на сервер. Drupal 8 работает на базе симфонии, ...

Читать

Получить список прав определенной роли

Июнь 19, 2026 г.

Когда прав очень много, не удобно смотреть через админку, что же там выдано в роли. Особенно, если роль точечно добавляет несколько разрешений. Вот небольшой спиппет кода, который выводит список разрешений (permissions) для указанной роли. [crayon-6ae85a8362765613734852/] ...

Читать
 

Комментарии к «Редирект на нужную страницу после отправки данных формы в Drupal»

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



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

Один комментарий в “Редирект на нужную страницу после отправки данных формы в Drupal”

  1. Вова:

    Спасибо, теперь буду знать