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

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

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

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

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

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

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

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

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

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

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

Получить имя поля ключа entity в Drupal 7

Апрель 6, 2021 г.

У меня эта задача возникла при работе с формами, где формы содержат поля '#entity' и '#entity_type'. Нужно было найти универсальный способ прочитать ID объекта, т.к. для каждого объекта имя этого поля может отличаться (для node - nid, для file - fid и ...

Читать

Убираем пустые категории из фильтра во views

Сентябрь 13, 2023 г.

Весьма распространённый случай, когда в качестве exposed filter используется поле, связанное с таксономией. Так вы получаете набор опций в фильтре для своего представления, которое доступно пользователю. Также весьма часто некоторые дополнительные ...

Читать

Пишем карту сайта под Drupal 7

Июль 23, 2016 г.

Нужна ли HTML карта сайта или нет - это науке не известно. Как минимум она нужна SEO - специалистам. :) В простейшем случае, карта сайта - это портянка урлов всех публикаций, т.н. плоский список. Иерархическая карта (в виде дерева) обычно базирует ...

Читать

Выполнение php кода через drush

Март 24, 2020 г.

Для отладки или выполнения какого то разового кода иногда требуется выполнить php код в системном окружении вашего сайта на Drupal. Без drush приходится добавлять код вроде следующего в файл темы (а в последствии его удалять от туда): [crayon-6984b9d8647bf133509632/] ...

Читать
 

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

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



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

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

  1. Вова:

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