0

我有一个文章文档类型 - 其中两个属性是多节点树选择器。

当保存/发布此文档类型的节点时,我想从这些选择器中获取 id,在 umbraco 中查找以获取节点名称。然后我想使用这些节点名称来创建“Umbraco 标签”并将它们添加到索引中。(针对正在保存的节点)

因为我有两个多节点树选择器,所以我想将标签保存为标签组。

因此,当我进行自定义索引搜索时,我只需搜索文档类型为 Article 的节点。

我有我的 GatheringNodeData 事件设置和工作,所以只需要一些关于它是如何完成的建议。

这可能/合乎逻辑吗?

4

1 回答 1

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”字段中搜索标签。您可能遇到的唯一问题是您的标签是否包含另一个标签。例如,如果您有标签“我的标签”和“我的标签 2”,则在新字段中搜索“我的标签”将返回带有两个标签的项目。

于 2015-06-19T14:23:58.260 回答