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

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

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

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

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

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

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

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

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

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

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

Хватит места каждому гению

Ноябрь 3, 2013 г.

С месяц уже участвую в проекте ГенийМеста в качестве, естественно, программиста. В наследство от разработчиков мне достался довольно спорный подход (почти ...

Читать

Создание параграфов из CSV файла

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

Параграфы, оторванные от родительской entity нам не нужны, потому эта миграция является дочерней к рассматриваемому примеру миграции статей блога из CSV. Из всего набора полей источника нам требуется только два поля - это id и body. migrate_plus.migration.custom_text_to_paragraph.yml ...

Читать

Получить имя текущей темы по дефолту в Drupal

Январь 21, 2019 г.

Theme API к сожалению не даёт прямого метода, чтобы прочитать это значение. Как его получить? Иногда программно нужно установить, что именно видит пользователь на фронт-енд (какую тему использует движок). Необходимость возникает из-за того, ...

Читать

Программное создание параграфов (ParagraphsItemEntity) в Drupal

Май 24, 2019 г.

Пример кода, как программно реализовать создание параграфа (речь идет о модуле - paragraphs). Обычно параграфы создаются редакторами через админку, но иногда требуется создать новый параграф с помощью кода, например, при импорте данных, структурных ...

Читать
 

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

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



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

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

  1. Вова:

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