【问题标题】:Sitecore Multisite Lucene Search RelevanceSitecore 多站点 Lucene 搜索相关性
【发布时间】:2011-05-18 02:01:51
【问题描述】:

我目前有一个 Sitecore 6.4 的多站点设置。我在站点上安装了 LuceneSearch 模块,但被要求显示所有站点的搜索结果。我已将 web.config 上索引定义中的“根”更改为指向包含所有站点的根,这成功地返回了所有站点的结果。

但是,需要对这些结果进行加权,以将当前上下文站点的结果显示在其他结果之上。

有什么简单的方法可以实现吗?

我一直在考虑为每个站点创建一个单独的索引,然后循环遍历所有站点,首先从当前站点的索引返回结果,但我怀疑一定有更好的主意。

【问题讨论】:

    标签: lucene sitecore


    【解决方案1】:

    你可以索引每个item的路径并添加为lucene字段,然后用每个站点的起始路径进行前缀查询。

    注意:索引路径时,将(“/”或空格)替换为其他内容,例如“#”,并在构建查询时执行相同操作。

    如需提前使用 lucene 搜索,请查看:http://sitecoreblog.alexshyba.com/2010/11/sitecore-searcher-and-advanced-database.html

    【讨论】:

      【解决方案2】:

      据我所知,提升值是在您创建或重新构建索引时设置的,因此您将无法根据上下文站点设置提升值。

      只是一个想法,但使用 AdvancedDatabaseCrawler SharedSource 模块,您可以添加一个名为“站点”的新动态字段,并为您要编制索引的每个项目存储站点 ID 或站点名称。然后,您可以搜索索引两次。一次获取当前上下文站点的所有结果,然后在第二次搜索中获取站点字段不等于上下文站点的所有结果。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多