Drupal 7 Views暴露过滤器“Any”,选择有限

时间:2012-09-24 20:00:47

标签: drupal drupal-7 filtering drupal-views

我在暴露过滤器中遇到Drupal 7 -Any-选项的问题。我有一个大约8个分类术语的列表,我希望我的用户能够在其中的6个之间进行过滤。其他两个术语在网站上的另一个地方使用,但所有8个术语都是同一词汇的一部分。

我的分类术语是(例如):

Eggs
Ham
Cheese
Bacon
Sausage
Juice
Fruit
Toast

在我公开的过滤器中,我选择其中6个术语作为可用选项进行过滤。现在过滤器看起来像这样:

-Any-
Eggs
Ham
Cheese
Bacon
Sausage
Juice

问题在于,当您选择-Any-时,它会包含ToastFruit条款。我希望-Any-只能是我在视图中选择的6个术语中的任何一个。

一种解决方法是检查Required框以要求进行选择。这会关闭-Any-选项,但我想保留它,以便当您到达页面时,默认选项会显示所有6个项目。

如何限制-Any-仅包括我对公开过滤器的选择?

2 个答案:

答案 0 :(得分:2)

您还可以为相同的分类词汇表添加另一个过滤器。不要暴露它,将操作符设置为“Is none of”并选择您不想搜索的术语(Fruit,Toast)。

这样,即使用户从曝光的过滤器中选择“任意”,未曝光的过滤器也会删除任何不需要的字词。

答案 1 :(得分:0)

使用hook_views_query_alter并添加另一个where子句以将其限制在列表中。