Drupal 7 视图公开过滤器"Any",选择有限



我在公开的过滤器中使用Drupal 7 -Any-选项时遇到了问题。我有一个包含大约 8 个分类术语的列表,我希望我的用户能够在其中的 6 个之间进行筛选。其他 2 个术语在网站上的另一个地方使用,但所有 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-限制为仅包含我为公开的筛选器选择?

您还可以为同一分类词汇添加另一个筛选器。不要暴露它,将运算符设置为"不是",然后选择您不想搜索的术语(水果,吐司)。

这样,即使您的用户从公开的筛选器中选择"any",未公开的筛选器也会删除任何不需要的术语。

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

最新更新