ウォークスルー

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

このページの翻訳は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 )

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