我有一个文章文档类型 - 其中两个属性是多节点树选择器。
当保存/发布此doc类型的节点时,我想从umbraco中查找这些选择器中的ID以获取节点名称。然后,我想使用这些节点名称来创建' Umbraco标签'并将它们添加到索引中。 (针对正在保存的节点)
因为我有两个多节点树选择器,所以我想将标签保存为标签组。
当我进行自定义索引搜索时,我只需要搜索文档类型为Article的节点。
我的GatheringNodeData事件已经设置好并且正常工作,所以只需要一些关于它是如何完成的建议。
这可能/逻辑吗?
答案 0 :(得分:0)
这当然有可能!在GatheringNodeData事件中,您只需构建标记字段并将其添加到索引中。这里有一些粗略的代码可以让您了解如何执行此操作:
private void OnGatheringNodeData(object sender, IndexingNodeDataEventArgs e)
{
// Create searchable path
if (e.Fields.ContainsKey("tagsField"))
{
//get the info that you need here and add it to the string you want to index
}
// Extract the filename from media items
e.Fields.Add("modifiedTags", "YOUR STRING HERE");
}
然后,您可以在" modifiedTags"上搜索标签。领域。您可能遇到的唯一问题是,如果您的标签包含另一个标签。例如。如果你有标签"我的标签"和#34;我的标签2"搜索"我的标签"在新字段上将返回标记有两个标记的项目。