我使用sitecore和solr进行了设置。 我希望在publishItem中收集信息(不同的TemplatesIds),然后在发布结束时,使用需要重新索引的名称调用solr。
我设法使用PublishItemProcessor和publish:itemProcessed事件获取所有模板ID,其中我将模板ID存储在PublishContext.CustomData中作为Hashset。 但是,在发布完成后,我怎么能得到我在出版期间收集的这些信息?我希望在发布所有内容之后,在发布期间收集的信息中只调用一次solr。
希望这是有道理的,请帮忙。
答案 0 :(得分:2)
发布后,您无需重新编制索引。
Sitecore具有开箱即用的功能。
您使用索引更新策略来维护索引。您可以使用一组唯一的索引更新策略配置每个索引。出于性能原因,您不应为每个索引指定三个以上的更新策略。
Sitecore提供了一系列不同的索引更新策略,您可以使用更多策略扩展此集。
Sitecore提供的所有策略都在Sitecore.ContentSearch.Solr.Index.IndexName配置文件中的以下节点下定义:
<configuration ref="contentSearch/indexConfigurations/defaultSolrIndexConfiguration" />
<strategies hint="list:AddStrategy">
您需要使用这些默认策略:
RebuildAfterFullPublish
OnPublishEndAsync
有关搜索,索引和抓取的详细信息,请访问:
https://doc.sitecore.net/sitecore_experience_platform/setting_up__maintaining/search_and_indexing