设置Umbraco索引

时间:2013-03-08 10:38:02

标签: umbraco indexing lucene

我使用Umbraco 6.02创建了一个站点,现在我正在查看该站点的所有最终配置,并且我已经开始使用索引了。我做了一些研究,但我不能简单地找到每个部分需要包含的内容以及原因。

我应该在索引的<IndexUserFields>部分中包含哪些字段?它只是我将用于搜索的字段,例如:currentNode.Children(x => x.bodyText.Contains("*"))?或者我将用于为新闻文章排序date field等节点的字段?或者还有更多的东西吗?

我需要在<IncludeNodeTypes>部分和<ExcludeNodeTypes>部分中添加哪些文档类型?为什么?

我是否将我的字段添加到已创建的索引之一,还是创建自己的索引?

1 个答案:

答案 0 :(得分:7)

老帖但可能会帮助一路上的人。


http://umbraco.com/follow-us/blog-archive/2011/9/16/examining-examine.aspx

您可以创建自定义索引(如果需要)以锁定您正在执行的搜索类型。很多时候,您的网页上某处有搜索框,而您只想搜索某些doc types及其相关内容。

请记住,您可以创建新的索引集,但请记住,您需要在Config/ExamineSettings.config文件和Config/ExamineIndex.config文件中注册它们。

上面的链接是我如何让我的工作正常,只是在配置中搜索(2)不同的文档类型(检查用作NodeTypes)。

以下设置是使用默认的ExternalIndexer创建的,而不是新创建的自定义设置。


您要编辑的文件位于Config/ExamineIndex.config。您要编辑的集合是ExternalIndexSet(默认情况下)。该路径将指向external临时文件夹

  <IndexSet SetName="ExternalIndexSet" IndexPath="~/App_Data/TEMP/ExamineIndexes/External/">

对于IndexUserFields部分中的字段,这些字段是您在文档类型中定义的自定义属性

<IndexUserFields>
  <add Name="itemNumber" />    <-- custom property
  <add Name="productName" />   <-- custom property
</IndexUserFields>

您需要的doc types(NodeTypes)是您为文档类型命名的任何内容。请记住,这些是别名,而不是名称

<IncludeNodeTypes>
  <add Name="Product" />  <-- document type
  <add Name="Variant" />  <-- document type
</IncludeNodeTypes>

请记住,在设置此项后,您需要重新索引您的检查。您可以登录Umbraco的后端并转到Developer,然后点击显示Examine Management的标签来实现此目的。

请注意,界面为Umbraco 7,但配置文件仍适用于v6

enter image description here