覆盖Exposed Views表单的输入以呈现一系列值

时间:2011-05-12 19:50:43

标签: drupal views drupal-6 drupal-exposed-filter

在Exposed Views窗体(Drupal 6,Views 2)中,我想覆盖输入文本,以便呈现从一系列值中选择的选项,类似于:

enter image description here

或者只是一个简单的:两个文本输入,来自标签( 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');
    }
}

如何将默认文本输入更改为如上所述?

1 个答案:

答案 0 :(得分:0)

我正在做类似模板功能的事情。 您可以删除渲染的输出并将其自己渲染为主题函数。

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;
  }
}

请务必使用Devel模块中的dpm()来确定您需要使用的标识符,因为主题图层可能略有不同。