删除暴露过滤器的逻辑运算符(未锁定)

时间:2010-08-05 22:15:43

标签: drupal drupal-6 drupal-views

我有一个视图,我公开了一个过滤器,它是产品的价格。我希望用户能够选择价格(基于价格的过滤器),所以我暴露了过滤器,然后解锁了操作员,所有这些都解锁了(操作员)。有没有办法我只能解锁一些运算符,如“小于”,“介于两者之间”,“大于”。我不希望用户选择“Is Empty”,“Is not empty”。

1 个答案:

答案 0 :(得分:2)

使用自定义模块和hook_form_alter()

非常简单
function mymodule_form_alter(&$form, &$form_state, $form_id) {

  // Change test to the name of your view
  if ($form_id == 'views_exposed_form' && $form_state['view']->name == 'test') {

    // Change field_test_value_op to the identifier you specified
    unset($form['field_test_value_op']['#options']['empty']);
    unset($form['field_test_value_op']['#options']['not empty']);
  }
}