製品リストで使用可能なレンダリングの選択
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
Commerce検索結果レンダリングを使用して、製品リストをオンラインでレンダリングできます。このレンダリングは、標準のSXA検索結果レンダリングと 検索サービスに基づいています。これには、レンダリングバリアントとScribanテンプレートの使用が含まれます。
Commerce検索結果のレンダリングは、SXAの検索結果レンダリングとほぼ同じですが、主な違いは次のとおりです。
-
翻訳を組み込んだ修正されたMVCビュー を使用します。
-
レンダリングされる製品のリストについて、Commerce Engineから 製品の価格と在庫ステータスをリクエストする 機能があります。2番目のAJAX呼び出しを使用して情報を要求し、データをバインドするためのJavaScriptが追加されました。
-
これには、SXA検索結果コンポーネントで使用されるルートとは別のレンダリング バリアント ルートがあります。
次の表では、製品リストの表示方法の違いについて詳しく説明します。
差 |
Commerce検索結果のレンダリング |
製品リストとプロモーション製品のレンダリング |
---|---|---|
Sitecore 9.3以降で利用可能 |
Sitecore 9.0以降で利用可能 | |
製品リストで使用可能なレンダリングの数 |
1つのレンダリングは、製品の一覧をレンダリングする必要があるすべてのシナリオで使用できます。このレンダリングでは、ContentSearchクエリを含むコンテンツで定義された標準のSXAスコープを使用します。動的クエリ トークンは、検索結果を決定するために使用されます。 「Commerce検索範囲の作成」を参照してください。 |
2つのレンダリングが使用可能で、それぞれが製品のリストをレンダリングする必要がある異なるシナリオ用です。これらのレンダリングは似ていますが、さまざまなシナリオでレンダリングする製品を取得するために異なるクエリを実行する異なるコードがあります。 プロモーション商品のレンダリングでは、コンテンツで定義されたクエリが実行されますが、動的クエリ トークンを使用することはできません。一方、Product Listレンダリングでは、現在のコンテキスト アイテムに基づいてカタログがクエリされ、カテゴリであると仮定するか、クエリ検索用語 (クエリ パラメーターとして指定されている場合) に基づいてカタログがクエリされます。 |
カスタマイズ |
このレンダリングは、出力を生成するScribanテンプレートを含むレンダリング バリアントをサポートします。デフォルトの実装は、製品カートのみを担当するScribanテンプレートに基づいています。 |
両方のレンダリングのHTML出力をカスタマイズするには、すべての変更に対してMVCビューをオーバーライドする必要があります。どちらのレンダリングも製品カードのリスト全体を出力する役割を担うため、製品カードに変更を加えるには、コンポーネント全体をカスタマイズする必要があります。 |
パーソナル 化 |
パーソナライゼーションは、レンダリングバリアントとScribanテンプレートの両方でパーソナライゼーションがサポートされているため、すべてのレベル (レンダリング、製品カード、製品カード内) で実行できます。 |
製品カードレベルでのパーソナライゼーションは不可能です。これは、コンポーネントレベルでのみ使用できます。 |
AJAX呼び出しの数 |
デフォルトでは、1つのAJAX呼び出しが使用されます。ただし、これを変更して、2つのAJAX呼び出し が使用されるようにすることができます。1つはSXA Search Serviceで、レンダリング バリアント サーバー側の処理によって生成される製品リストのHTMLを取得します。Knockout JSを使用してHTMLにバインドされているバルク価格と株式情報の組み合わせを取得するための別の呼び出し。 |
JSONを返す1つのAJAX呼び出しは、Knockout JSを使用してMVCビューで定義された静的HTMLにバインドされます。JSONには、商品データと価格および在庫情報の両方が含まれています。 |
キャッシングとパフォーマンス |
キャッシングはレンダリングには組み込まれていませんが、コンテンツ配信ネットワーク (CDN) を使用してサポートされています。製品データは1つのAJAX呼び出しを使用して取得され、価格と在庫の情報は2つ目のAJAX呼び出しを使用して取得されるため、両方を別々にキャッシュできます。メインの製品データのキャッシュをサポートしながら、価格と在庫情報をライブで取得します。 |
製品リスト レンダリングには、AJAX呼び出しのキャッシュに対するサポートが組み込まれています。 キャッシュはCDインスタンス レベルで行われ、地理的に認識されておらず、CDNを使用する場合ほど理解しやすく機能的ではありません。昇格製品のレンダリングには、キャッシュのサポートは組み込まれていませんが、AJAX呼び出しのキャッシュにCDNを使用してサポートされています。どちらのレンダリングでも、AJAX呼び出しのキャッシュを有効にすると、価格と株式の情報がキャッシュされることになり、望ましくない場合があります。 |
レンダリングのサポート |
すべての標準SXA検索レンダリングと互換性があります。レンダリングのいくつかはレンダリングバリアントに基づいており、Scribanテンプレートをサポートしています。 |
ページングまたは無限スクロールのコマース固有の検索レンダリングのみをサポートし、レンダリングバリアントやScribanテンプレートには基づいていません。 |
製品ランキング |
スコープで定義されたルールとContentSearchクエリを使用してサポートされます。 「Commerce検索結果の並べ替え 」および 「検索結果で商品をブーストする」を参照してください。 |
サポートされていません。 |
機能の範囲 |
SXA Searchレンダリングのセットは、新しい 集約ファセット とファセット概要レンダリングを含む広範なものです。 |
コマース固有の検索レンダリングのセットは限られています。 |
検索行動のトラッキング |
集計ファセットまたはソート結果レンダリングを変更すると、FacetAppliedイベントとProductSortingイベントがトリガーされます。 イベント データはコレクションDBに記録されます。 |
ページ イベントは、Search Initiatedレンダリングを通じてトリガーされます。 |
更新されたレンダリングは、カスタマイズに関してはより柔軟ですが、ページの読み込みにかかる時間に影響を与える可能性があります。