我在 Drupal 7 中有一个博客,并使用视图来显示字段。我在侧边栏上显示了 2 组标签:
1) SHAPES
Triangle
Square
Rectangle
2) COLOR
Red
Blue
Green
我通过 Structure > Taxonomy > Vocabulary > Add Term 创建了两组标签
对于视图,我创建了一个带有两个暴露过滤器的视图(类似于本教程中所做的)
看法:
Path: '/blog/tag'
Filter Criteria:
1) 'Content: Shape (exposed)'
Exposed form in Block: 'Yes'
Filter identifier: 'shape_id'
2) 'Content: Color (exposed)'
Exposed form in Block: 'Yes'
Filter identifier: 'color_id'
Exposed form style: BEF
暴露的过滤器在结构 > 块中设置为适当的块区域。
如果我单击“三角形”,则只应显示带有“三角形”标签的博客文章。然后,如果我单击“红色”,则只会显示带有“红色”标签的帖子。
当我单击条款时,似乎正在显示正确的博客文章。URL 附加了两个词汇表的 ID,但我似乎无法显示正确的组合。
单击“三角形”时所需的 URL:“/blog/tag/?shape_id=1&color_id=All”
单击“红色”时所需的 URL:“/blog/tag/?shape_id=All&color_id=1”
因此,基本上结果应该显示仅用一个术语 ID 标记的项目。
但是,它当前的工作方式是,如果我单击“三角形”,然后单击“红色”,则“三角形”和“红色”都有“选定”类(都是粗体),并且 url 是:'/blog/标签/?shape_id=1&color_id=1'
我能够获得所需 URL 的唯一方法是显示“-Any-”选项。但是,我的用例是不在标签列表中列出“-Any-”。
如果没有在术语列表中列出“-Any-”,这甚至可能吗?我以前从未使用过多个暴露的过滤器,所以任何指导都会很棒,因为我已经研究了将近一周。我在另一篇文章中读到上下文过滤器将允许我创建单独的路径别名,这些别名是干净的 url,但我还没有成功地做到这一点。
任何帮助将不胜感激。感谢您的时间。