Форма поиска с редиректом

Вместо метода "get" используем "post" так, как нам нужна логика редиректа.
А "get" запрос будет эмулировать "drupal_goto".

Пример

У нас есть форма поиска с галочкой "искать только в новостях" (элемент "is_news").
Тогда редирект будет идти на страницу с новостями.

Для реализации достаточно форме добавить submit.

function FORMNAME_submit($form, &$form_state) { $values = &$form_state['values']; // clear unset($values['form_build_id']); unset($values['form_token']); unset($values['form_id']); unset($values['submit']); unset($values['op']); // redirect if ($values['is_news']) { $form['#action'] = '/news'; } drupal_goto($form['#action'], array('query' => $values)); }

Полезные ссылки:
Очистить get форму от лишних параметров - http://xandeadx.ru/blog/drupal/674

Прозрачного код ;).

Теги
Drupal 7.x
Form