我正在使用Umbraco CMS,并尝试使用其使用Examine的网站搜索功能.
当我编辑页面并发布它时,检查索引不会更新,因此搜索结果总是过时的.我必须手动删除索引文件夹来更新它.
每次更新内容时,索引都不应自动更新吗?
我编写了一个在发布时更新索引的类。
using umbraco.BusinessLogic;
using umbraco.cms.businesslogic.web;
using Examine;
public class UmbracoEvents: ApplicationBase
{
/// <summary>Constructor</summary>
public UmbracoEvents()
{
Document.AfterPublish += new Document.PublishEventHandler(Document_AfterPublish);
}
private void Document_AfterPublish(Document sender, umbraco.cms.businesslogic.PublishEventArgs e)
{
// Rebuild SiteSearchIndexer
ExamineManager.Instance.IndexProviderCollection["SiteSearchIndexer"].RebuildIndex(); // Unfortunately this doesn't index the latest change, must republish to index it
}
}
Run Code Online (Sandbox Code Playgroud)
然而,即使它应该在发布“之后”运行,它也不会获得最新的更改。因此,要使搜索结果保持最新,您必须发布两次:S
| 归档时间: |
|
| 查看次数: |
5314 次 |
| 最近记录: |