検索ポリシーを定義する

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

インデックスを設定する際には、Plugin.Search.PolicySet.1.0.0.jsonファイル(または各環境JSONファイル)に以下のポリシーを追加する必要があります。

Search Scopeポリシー

Search Scopeポリシーは、検索スコープ名(インデックス名と一致)、インデックスに追加されるエンティティの種類、検索結果からデータの追加・削除を行うタグセット、そしてエンティティのために監視すべきリストを定義します。

{ "$type": "Sitecore.Commerce.Plugin.Search.SearchScopePolicy, Sitecore.Commerce.Plugin.Search", "Name": "YOUR SEARCH SCOPE NAME", "IncrementalListName": "YOUR INCREMENTAL LIST NAME", "FullListName": "YOUR FULL LIST NAME", "DeletedListName": "YOUR DELETED LIST NAME", "EntityTypeNames": "YOUR ENTITY NAME",

"ResultDetailsTags": { "$type": "System.Collections.Generic.List`1Sitecore.Commerce.Core.Tag, Sitecore.Commerce.Core, mscorlib", "$values": { "$type": "Sitecore.Commerce.Core.Tag, Sitecore.Commerce.Core", "Name": "YOUR TAG" }, { "$type": "Sitecore.Commerce.Core.Tag, Sitecore.Commerce.Core", "Name": "ANOTHER TAG" }

} }

インデックス可能なポリシー

インデックス可能なポリシーは、インデックスの設定、インデックスのフィールド、そのタイプ、検索可能か、フィルタブルかなどを定義します。キーとして設定できるフィールドは1つだけです(そうしないとインデックス作成や更新時にエラーが出ます)。 SearchScopeNameはSearchScopePolicyの名前と一致しなければなりません。

{ "$type": "Sitecore.Commerce.Plugin.Search.IndexablePolicy, Sitecore.Commerce.Plugin.Search", "SearchScopeName": "YOUR SEARCH SCOPE NAME", "Properties": { "PROPERTY1": { "TypeName": "System.String", "IsKey": true, ONLY ONE PROPERTY CAN BE KEY "IsSearchable": true, "IsFilterable": false, "IsSortable": false, "IsFacetable": false, "IsRetrievable": true }, "PROPERTY2": { "TypeName": "System.String", "IsKey": false, "IsSearchable": true, "IsFilterable": true, "IsSortable": true, "IsFacetable": false, "IsRetrievable": true }, "PROPERTY3": { "TypeName": "System.DateTimeOffset", "IsKey": false, "IsSearchable": false, "IsFilterable": true, "IsSortable": true, "IsFacetable": false, "IsRetrievable": true }, "ArtifactStoreId": { "TypeName": "System.String", "IsKey": false, "IsSearchable": false, "IsFilterable": true, "IsSortable": false, "IsFacetable": false, "IsRetrievable": false } } }

!注ArtifactStoreIdは複数の環境がインデックスを共有する場合に必須フィールドとして使われます。ArtifactStoreIdフィールドは、環境が追加・削除・取得できるデータを決定します。

Search Viewポリシー

SearchViewポリシーは、検索および検索結果のエンティティビューの設定を定義しています。

ビューがリクエストされると、IGetEntityViewPipelineのブロックがリクエストされたビューのSearchViewPolicyをチェックします。Search Viewポリシーにリクエストされたビューへの参照が含まれている場合、パイプラインはそのリクエストされたビューの子ビューとして検索ビューを追加します。

{ "$type": "Sitecore.Commerce.Plugin.Search.SearchViewPolicy, Sitecore.Commerce.Plugin.Search", "SearchScopeName": "YOUR SCOPE NAME", "ViewName": "YOUR VIEW NAME", "PageSize": 10, "PageSizeOptions": { "$type": "System.Collections.Generic.List`1System.Int, mscorlib", "$values": { "$type": "System.Int", "Name": 5 }, { "$type": "System.Int", "Name": 10 }, { "$type": "System.Int", "Name": 25 }, { "$type": "System.Int", "Name": 50 }, { "$type": "System.Int", "Name": 100 }

}

この記事を改善するための提案がある場合は、 お知らせください!