我发现这可行的唯一方法是通过以下针对任何多选方面的逻辑:
每当用户从构面中选择一个值(“向下钻取”)时,您都将向其(选择面所在的构面 除外 )的所有构面以及用于过滤查询的顶级 过滤器
添加相应的过滤器结果。
换句话说,给定3个选择面A,B和C:
- 从A =>中选择值将过滤器添加到顶级 过滤器 以及B和C 的 facet_filter 。
- 从B =>中选择值将过滤器添加到顶级 过滤器 以及A和C 的 facet_filter 。
- … 等等
顶级过滤器始终将所有选择的过滤器组合在一起,而每个单独的构面都根据 其他 构面中的选择包含facet_filters 。



