我正在使用CQ5开箱即用的搜索组件。我的问题是错误页面会显示在搜索结果中。
我是否知道如何限制错误页面在搜索中显示。 我们是否需要为页面添加新属性,以便QueryBuilder可以限制它?
答案 0 :(得分:2)
如果您无法将不希望成为索引的内容与您所做的内容分开,则可以将搜索索引器配置为忽略指定内容中的某些内容或属性。这在"How to modify the search engine configurations in CQ5网站的Adobe CQ Help页面上有详细描述。
本质上,索引器可以通过将属性添加到indexing_config.xml文件来忽略属性,如下所示:
<index-rule nodeType="nt:base">
<!-- ... existing ignored properties -->
<property nodeScopeIndex="false">mySecretProperty</property>
</index-rule>
以下内容应排除具有特定resourceType及其后代的节点的页面。
<index-rule nodeType="nt:base" condition="@sling:resourceType='app/components/errorPage'" />
<index-rule nodeType="nt:base" condition="ancestor::*/@excludefromindex='app/components/errorPage'" />
Jackrabbit Indexing Configuration页面提供了有关此文件语法的更多详细信息。
内容不会自动重新编制索引,可以找到有关如何触发重新索引的详细信息here。
答案 1 :(得分:1)
在配置搜索结果组件实例(位于搜索结果页面上)的对话框中,查找名为“搜索路径”的字段。这将映射到CRX中名为searchIn
的属性。将此属性设置为内容的子树,该子树不包括您的错误页面。例如,如果您将内容树设置为
/content
/searchable-content
home-page
...
/error-pages
404
401
...
在这种情况下,您可以将searchIn
设置为/content/searchable-content
。