如何让 Lucene 包含在站点根目录之外索引的结果,例如。基于 fx 根的东西。“/sitecore/content/stuff”,但没有放在“/sitecore/content/Home”中。
查看“/sitecore modules/LuceneSearch/”中的 SearchManager.cs,SiteRoot 被定义为“SiteCore.Content.Site.Startpath”,但对该文件进行任何更改似乎都会产生任何影响。
注意:
我只使用“LuceneResults”.ascx & .cs。
----- 问题已更新,因为我缩小了问题的可能范围 -----
我试图创建一组特定项目的索引,用于 Lucene 搜索。
在 web.config 中,我指定了一个索引,其中包含:
...
<root>/sitecore/content/Home/Subfolder</root>
...
并且可以完美运行,在搜索时获取所有子项。
然后我将完全相同的项目复制到一个新位置,并更新了我的 web.config 如下:
...
<root>/sitecore/content/newSubfolder/Subfolder/Subfolder</root>
...
现在我的搜索从来没有找到任何东西!
有谁知道这里可能是什么问题。
注意:
- 我在每次更改时都重建了搜索索引数据库。
- 在“卢克”中,索引似乎很好,并且这里的搜索产生了正确的结果。
完整索引:
<index id="faqindex" type="Sitecore.Search.Index, Sitecore.Kernel">
<param desc="name">$(id)</param>
<param desc="folder">__faq</param>
<Analyzer ref="search/analyzer"/>
<locations hint="list:AddCrawler">
<resources type="Sitecore.Search.Crawlers.DatabaseCrawler, Sitecore.Kernel">
<database>master</database>
<root>/sitecore/content/MyContent/Snippets/FAQ</root>
<include hint="list:IncludeTemplate">
<faqblock>{3340AAAE-B2F8-4E22-8B7B-F3EDDB48587E}</faqblock>
</include>
<tags>faqblock</tags>
<boost>1.0</boost>
</resources>
</locations>
</index>