0

Article Doc Type があります。プロパティのうち 2 つはマルチノード ツリー ピッカーです。

このドキュメント タイプのノードが保存/公開されると、これらのピッカーから ID を取得して、umbraco でルックアップを行い、ノード名を取得したいと考えています。次に、これらのノード名を使用して「Umbraco タグ」を作成し、インデックスに追加します。(保存されているノードに対して)

2 つのマルチノード ツリー ピッカーがあるため、タグをタグ グループとして保存します。

これは、カスタム インデックス検索を行うときに、ドキュメント タイプ 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」フィールドでタグを検索できます。発生する可能性のある唯一の問題は、別のタグを含むタグがある場合です。たとえば、「My Tag」と「My Tag 2」というタグがある場合、新しいフィールドで「My Tag」を検索すると、両方のタグでタグ付けされたアイテムが返されます。

于 2015-06-19T14:23:58.260 に答える