Как заставить поиск отображать ошибку, если поисковые запросы не введены


Прямо сейчас, если я не введу поисковый запрос в поисковый модуль drupal, он вернет результаты для "поиска". Я бы хотел, чтобы вместо этого отображалась ошибка, предлагающая пользователю ввести поисковый запрос. Есть ли какая-то установка?

 4
Author: LostLin, 2011-04-18

2 answers

Обратный вызов формы для формы поиска - это следующая функция.

function search_form_submit($form, &$form_state) {
  $keys = $form_state['values']['processed_keys'];
  if ($keys == '') {
    form_set_error('keys', t('Please enter some keywords.'));
    // Fall through to the drupal_goto() call.
  }

  $type = $form_state['values']['module'] ? $form_state['values']['module'] : 'node';
  $form_state['redirect'] = 'search/' . $type . '/' . $keys;
  return;
}

Если, когда вы ничего не вводите, Drupal ищет поиск , должен быть модуль, который изменяет содержимое $form_state['values']['processed_keys'], когда это пустая строка.

 1
Author: kiamlaluno, 2012-09-03 15:45:44

Я знаю, что это лениво, но я бы сделал это с помощью javascript. Вы сэкономите дополнительное время ожидания и нагрузку на свой сайт.

 0
Author: MrMaksimize, 2011-04-18 19:17:31