Переопределение ввода формы Exposed Views для отображения диапазона значений

В форме Exposed Views (Drupal 6, Views 2) я хотел бы перезаписать вводимый текст, чтобы он отображал возможность выбора из диапазона значений, что-то вроде этого:

введите здесь описание изображения

Или просто: два текстовых ввода с метками from и to (min, max, что угодно, например диапазон цен).

Мне удобно как редактировать шаблоны (в данном случае views-exposed-form.tpl.php), так и перезаписывать вывод формы:

function mymodule_form_alter(&$form, $form_state, $form_id) {
    if ($form_id == 'views_exposed_form') {
        $form['submit']['#value'] = t('Filter');
    }
}

Как я могу изменить ввод текста по умолчанию на один, как описано?


person Naoise Golden    schedule 12.05.2011    source источник
comment
как это сделать, редактируя вопрос...   -  person Naoise Golden    schedule 13.05.2011


Ответы (1)


Я делаю что-то подобное в качестве функции шаблона. Вы можете удалить отрендеренный вывод и отрендерить свой собственный в качестве функции оформления.

function THEME_preprocess_views_exposed_form(&$vars, $hook) {
  switch($vars['form']['#id']){
    case 'views-exposed-form-VIEW_NAME-page-1':
      $vars['widgets']['filter-YOUR_FIELD']->widget = YOUR_CODE_HERE;
  }
}

Обязательно используйте dpm() из модуля Devel, чтобы вычислить идентификаторы, которые вам нужно использовать, потому что они могут немного отличаться в слое темы.

person Josep Valls    schedule 07.06.2011