ウォークスルー
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Sitecore Searchでは、ウィジェットは通常Sitecore Searchユーザーインターフェースで設定されます。この構成にはウィジェットの種類、ルール、機能が含まれます。
Searchはウィジェットルールをコンテキスト条件が満たされた場合にのみ適用します。時には、コンテキスト条件が実行時しか定義できない場合にルールを適用したい場合もあります。その場合は、リクエスト内でウィジェットの動作を設定できます。
例えば、コンバージョンは実行時のみ評価できます。ウィジェットの挙動を変更するには、リクエスト内にルールを追加できます。
Sitecore Searchで設定されたルールと実行時に作成されたルールは似ています。唯一の違いは、実行時に作成するルールでコンテキスト条件を定義する必要がないことです。条件はすでに満たされていると考えてよい。
このウォークスルーでは、以下の方法を説明します:
- 実行時に検索結果ウィジェットを作成します。
- アイテムを強化するルールを作りましょう。
- アイテムを埋めるルールを作りましょう。
- パーソナライズ設定をオーバーライドしてください。
- 属性ランクを上書きします。
実行時に検索結果ウィジェットを作成する
ルールはウィジェット固有のものなので、ルールを作成する前にWidgetRequestオブジェクトをインスタンス化する必要があります。
実行時に検索結果ウィジェットを作成するには:
-
search_widget.tsというTypeScriptファイルで、以下のコードブロックをコピー&ペーストし、インポートを調整します。
import { WidgetRequest, } from "@sitecore-search/data";
const widgetRequest = new WidgetRequest("rfkid_7"); widgetRequest.setEntity("content");
アイテムを強化するルールを作成します
指定されたスロットにブーストルールが表示され、SearchFilterを通過するアイテムが表示されます。
SearchFilterオブジェクトを使ってWilliam ShakespeareまたはWilliam Wordsworth作成したアイテムをブーストするルールを作成・追加するには:
-
search_widget.tsするには、次のコードブロックを追加し、インポートを調整します。
import { SearchFilter, Boost } from "@sitecore-search/data";
const boostFilter: SearchFilter = { type: "anyOf", name: "author", values: "William Shakespeare", "William Wordsworth" }
const boostRule: Boost = { filter: boostFilter, slots: 0,3,8 }
widgetRequest.addRfkFlag( "+rules" ); widgetRequest.addSearchRuleBoost( boostRule )
アイテムを埋めるルールを作る
埋蔵ルールはSearchFilterを通過する項目を表示します。
1900年1月1日以降に公開されたアイテムをSearchFilterオブジェクトで埋めるルールを作成・追加するには:
-
search_widget.tsするには、次のコードブロックを追加し、インポートを調整します。
import { SearchFilter, Bury } from "@sitecore-search/data";
const buryFilter: SearchFilter { type: "gte", name: "publication_date", values: new Date( 1900 ) }
const buryRule: Bury { filter: buryFilter }
widgetRequest.addRfkFlag( "+rules" ); widgetRequest.addSearchRuleBoost( buryRule )
パーソナライズ設定をオーバーライドします
パーソナライズ設定をオーバーライドして、Personalizationオブジェクトを使ったアフィニティアルゴリズムを使用する方法:
-
search_widget.tsするには、次のコードブロックを追加し、インポートを調整します。
import { Personalization } from "@sitecore-search/data";
const personalization: Personalization { algorithm: "affinity", } widgetRequest.addRfkFlag( "+personalization" ); widgetRequest.addSearchRuleBoost( personalization )
属性のオーバーライドランキング
Rankingオブジェクトを使ってアフィニティアルゴリズムを使用するパーソナライズ設定をオーバーライドするには:
-
search_widget.tsするには、次のコードブロックを追加し、インポートを調整します。
import { Personalization } from "@sitecore-search/data";
const likesRanking: Ranking { name: "likes", weight: 5 } const ratingRanking: Ranking { name: "rating", weight: 10 } widgetRequest.addRfkFlag( "+ranking" ); widgetRequest.addSearchRanking( likesRanking ) widgetRequest.addSearchRanking( ratingRanking )