Редирект после отправки формы в Drupal 7

В Drupal form API версии 6, у формы было свойство редиректа (пример из документации Drupal):

которое позволяло перенаправить пользователя после отправки/обработки данных формы. В 7й версии API это свойство исчезло. Что можно предпринять, чтобы получить похожий эффект?

Редирект в 6-й версии выполнял команду внутреннего перехода, для примера выше это соответствовало:

Никто не мешает нам выполнить этот переход в hook_submit формы. Соответствующий обработчик можно добавить в form_hook_alter.

Проблема этого способа в том, что не будут выполнены последующие обработчики формы onsubmit. Потому второй вариант — это изменить внешнее окружение так, чтобы drupal делал то, что нужно:

Это не помешает выполнится другим зацепкам, но и не помешает другим зацепкам использовать тот же самый трюк с подменой $_GET[‘destination’].

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

XML карта сайта для многоязычных проектов на Drupal

Апрель 16, 2024 г.

Для начала разберемся: что мы пытаемся построить. Ожидается, что у нас есть корневой файл sitemap.xml, который содержит список языковых xml карт. ...

Читать

Отладка запроса SQL, получаемого в модуле views Drupal

Октябрь 19, 2017 г.

Сложные представления (views) требуют понимания того, что в итоге получилось, какой запрос сформировался в результате магии и такой то матери в конструкторе View UI. Итак, как получить SQL запрос, который формируется во views drupal? В этом ...

Читать

Инициализируем кастомную тему в Drupal

Май 12, 2025 г.

При создании новой темы у вас есть варианты выбора начиная с того, чтобы взять готовую тему (и начать её менять под ваши задачи) до создания новой темы ...

Читать

Миграция терминов таксономии

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

Термины представляют из себя отдельные сущности, которые подключаются к родительской entity в виде term reference. Потому классический подход - это отдельная предварительная миграция терминов, а потом подключение их, используя migration_lookup плагин. ...

Читать
 

Комментарии к «Редирект после отправки формы в Drupal 7»

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



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

Один комментарий в “Редирект после отправки формы в Drupal 7”

  1. Frantsuzzz:

    Для 7 должен такой вариант работать:
    function _redirect_onsubmit($form, &$form_state) {
    $form_state[‘redirect’] = «user/login»;
    }