我有一个运行 apachesolr 搜索并通过 facetapi 模块使用分面的 Drupal 7 网站。
当我使用构面来缩小搜索范围时,一切正常,我可以看到过滤器被添加到搜索 URL,因此我可以将它们作为链接(现成的缩小搜索)复制到网站的其他地方。
以下是我选择多个方面/过滤器后 apachesolr URL 的外观示例:
search_url/search_keyword?f[0]=im_field_tag_term1%3A1&f[1]=im_field_tag_term2%3A100
' search_keyword ' 部分是我正在搜索的文本,' %3A ' 只是 url 编码的 ':'(冒号)。
了解这种格式后,我可以通过为 URL 创建正确格式来创建任意数量的现成搜索。完美的!
但是,这些过滤器始终是 AND 运算,与使用 facet 接口时的方式相同。有谁知道我是否可以使用某种语法(特别是在搜索 URL 中)来OR我的过滤器/构面?意思是,使其结果是包含两个过滤器中的任何一个的所有条目?
提前感谢您提供正确方向的任何帮助或指示!
新编辑:
我确实知道如何通过 URL 对同一词汇表中的术语进行 OR,我只是想知道如何对不同词汇表中的术语进行 OR。;-)