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

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

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

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

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

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

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

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

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

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

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

Ошибка: Migration is busy with another operation

Апрель 19, 2024 г.

При отладке миграций в Drupal могут возникать состояния, когда миграция не прошла по какой то причине (ошибке) и подвисла в состоянии отличном от Idle. ...

Читать

Сохранение файла, полученного через форму в Drupal

Февраль 17, 2024 г.

Вы создали форму с полем типа file, и хотите сохранять файл как сущность друпала при отправке данных формы. [crayon-699ebb9146037841820545/] Обычно объявления форм в Drupal 8+ размещаются в виде расширений класса FormBase в каталоге модуля /scr/Form/*. ...

Читать

Загрузка файла через форму в Drupal

Май 19, 2023 г.

Посмотрим как получить непосредственный доступ к файлу без загрузки файла в хранилище, при его загрузке в поле типа "file" Form API. Много гайдов посвящено тому как использовать поле managed_file, а для unmanaged случая считается, что разработчик ...

Читать

Как рендерить отдельные поля элемента field collections

Январь 31, 2019 г.

Модуль field_collection всю свою историю существования (аж 2010 года) проходит в статусе beta версии. Тем не менее многие разработчики используют его в своих проектах. На текущий момент это версия 7.x-1.0-beta13. Хотя FC - это ещё один entity, ...

Читать
 

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

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



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

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

  1. Вова:

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