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

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

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

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

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

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

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

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

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

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

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

Транслитерация имени файла при создании медиа entity программно в Drupal

Май 21, 2023 г.

При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы. Drupal (начиная с 8.2) объявляет специальный интерфейс, ...

Читать

Вывод строки запроса построенного в db_select

Апрель 11, 2019 г.

Конструктор запросов db_select позволяет абстрагироваться от движка базы данных. Если запрос довольно сложный, то на этапе тестирования может потребоваться, что называется, убедиться в том, что конечный запрос на языке SQL к базе именно тот, что вы ожидаете. ...

Читать

Theme image в Drupal 9

Август 3, 2021 г.

Смотрим как выполнить рендеринг файла-картинки в Drupal 9 программно. Есть FID, и требуется рендерить этот файл программно в шаблоне <IMG>. Для этого нам понадобится воспользоваться сервисом ядра - renderer. [crayon-692881fc10102487384404/] ...

Читать

Как добавить поле "количество" для кнопки add to cart в Drupal Commerce

Июль 13, 2023 г.

Кнопка выводится как элемент product.variations, а вот настройки полей, которые выводятся в этой сущности довольно глубоко зарыты. [crayon-692881fc101f6709822160/] Поле "кол-во товара в корзине" не является частью сущности product variation, ...

Читать
 

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

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



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

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

  1. Вова:

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