Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SitecoreSearchContrib-如何合并&;从多个索引排序_Sitecore_Lucene.net_Sitecore6 - Fatal编程技术网

SitecoreSearchContrib-如何合并&;从多个索引排序

SitecoreSearchContrib-如何合并&;从多个索引排序,sitecore,lucene.net,sitecore6,Sitecore,Lucene.net,Sitecore6,我目前正在使用SitecoreSearchContrib设置对Sitecore 6.6网站的搜索 我有两个索引。 查看我的网站内容的一个索引: /sitecore/content/home 另一个索引查找媒体库中的文档文件夹(包含PDF等) 在我的网站上搜索可以返回网页或Word/PDF文档 有没有一种方法(除了为内容和媒体库使用一个超级索引外)可以将两个索引的结果合并在一起,并且仍然按照它们的相关性/命中率对它们进行排序?最终解决了这个问题,即去掉了第二个索引,取而代之,只需在scSear

我目前正在使用SitecoreSearchContrib设置对Sitecore 6.6网站的搜索

我有两个索引。 查看我的网站内容的一个索引:

/sitecore/content/home 
另一个索引查找媒体库中的文档文件夹(包含PDF等)

在我的网站上搜索可以返回网页或Word/PDF文档


有没有一种方法(除了为内容和媒体库使用一个超级索引外)可以将两个索引的结果合并在一起,并且仍然按照它们的相关性/命中率对它们进行排序?

最终解决了这个问题,即去掉了第二个索引,取而代之,只需在
scSearchContrib.Crawler.config
中添加一个
块,以指向媒体库中我的文档所在的文件夹

例如

App\u Config/Include/scSearchContrib.Crawler.Config的内部

......
<index id="web" type="Sitecore.Search.Index, Sitecore.Kernel">
    <param desc="name">$(id)</param>
    <param desc="folder">web</param>
    <Analyzer ref="search/analyzer" />
    <locations hint="list:AddCrawler">
        <my-site-content type="scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler,scSearchContrib.Crawler">
        <Database>web</Database>
        <Root>/sitecore/content/MySite/Home</Root>
        <tags>Web Content</tags>
        <IndexAllFields>true</IndexAllFields>

        <!-- Include/Exclude templates, crawlers etc here -->

    </locations>
    <locations hint="list:AddCrawler">
        <my-site-media-library type="scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler,scSearchContrib.Crawler">
        <Database>web</Database>
        <Root>/sitecore/media library/SomeFolder/Documents</Root>
        <tags>Documents</tags>
        <IndexAllFields>true</IndexAllFields>   

        <!-- Include/Exclude templates, crawlers etc here -->

    </locations>
</index>
......
。。。。。。
$(id)
网状物
网状物
/sitecore/content/MySite/Home
网络内容
真的
网状物
/sitecore/媒体库/SomeFolder/文档
文件
真的
......

有什么原因不能或不想将两个位置都放在一个索引下吗?@ToddB No mate,这正是我在发布此问题几个小时后所做的。不清楚您是否可以从文档中执行此操作。@GFoley83根据我的要求,您正在引用的文档。@HarshBaid PDF和Word docs,位于媒体库中的预定文件夹中。您只需将另一个
节添加到
scSearchContrib.Crawler.config
,并指定要包含在索引中的节的根路径。我的意思是,是否有任何文档可用于配置
SitecoreSearchContrib
......
<index id="web" type="Sitecore.Search.Index, Sitecore.Kernel">
    <param desc="name">$(id)</param>
    <param desc="folder">web</param>
    <Analyzer ref="search/analyzer" />
    <locations hint="list:AddCrawler">
        <my-site-content type="scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler,scSearchContrib.Crawler">
        <Database>web</Database>
        <Root>/sitecore/content/MySite/Home</Root>
        <tags>Web Content</tags>
        <IndexAllFields>true</IndexAllFields>

        <!-- Include/Exclude templates, crawlers etc here -->

    </locations>
    <locations hint="list:AddCrawler">
        <my-site-media-library type="scSearchContrib.Crawler.Crawlers.AdvancedDatabaseCrawler,scSearchContrib.Crawler">
        <Database>web</Database>
        <Root>/sitecore/media library/SomeFolder/Documents</Root>
        <tags>Documents</tags>
        <IndexAllFields>true</IndexAllFields>   

        <!-- Include/Exclude templates, crawlers etc here -->

    </locations>
</index>
......