SXAキャッシュオプションの設定
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SXAレンダリングのキャッシュオプションを設定することで、SXAウェブページのロード時間を短縮できます。SXA HTMLキャッシュはレンダリング処理Sitecore回数を最小限に抑えます。これは非常に重要で、特に大量のアイテムを反復処理するレンダリングの場合に有効です。
!注サイトのキャッシュを有効にするには、*sitecore/content/tenant/site/settings/Site Grouping/*に移動し、フラグセクションでキャッシュHTMLチェックボックスを選択してください。
HTMLキャッシュは、優先度が異なる異なるレベルのSXAアイテムに適用できます。例えば、レンダリングに直接設定された値は、レンダリング定義のキャッシュ値よりも常に優先されます。
レンダリング定義キャッシュオプションをグローバルに設定する
レンダリング定義項目で、Sitecoreがコンポーネントをレンダリングする際のアクションを指定できます。レンダリング定義項目でキャッシュ設定を設定すると、キャッシュ設定が別途指定されていない限り、すべてのサイトにこれらの設定が適用されます。
レンダリングのキャッシュオプションをグローバルに設定するには:
-
sitecore/Layout/Renderings/Feature/Experience Acceleratorに移動して、該当するレンダリングをクリックしてください。
-
キャッシュ セクションで 、ナビゲーションレンダリングのキャッシュオプションを選択してウェブサイトのパフォーマンス向上に役立ててください:

- キャッシュ可能 – HTMLキャッシュを有効にするために選択します。レンダリングが1つのビューしかない場合は、このチェックボックスだけを選択する必要があります。
- インデックス上でクリア 更新 – インデックス更新時にレンダリングのHTMLキャッシュをクリアするオプションを選択してください。
- データによって変化 – レンダリングのデータソースに基づいてHTMLの別バージョンをキャッシュする選択をします。
- デバイスごとに変化 – 使用する各デバイスごとに出力のコピーをキャッシュする設定を選択してください。
- ログインごとに異なる – ログインユーザーに対してレンダリングの表示が異なるかどうかを選択します。
- Parmごとに変化 – レンダリングで受け入れられた各パラメータの出力をキャッシュする選択。同じレンダリングの異なるインスタンスを区別するために使用されます。
- クエリ文字列ごとに変化 – 各ユニークなクエリ文字列パラメータの組み合わせに対して出力をキャッシュする選択をします。
- ユーザーごとに異なる – レンダリングがユーザー固有の情報を表示するかどうかを選択します。
セットサイトレベルのレンダリングキャッシュ
現場レベルでレンダリングのキャッシュオプションを設定すると、レンダリング定義項目内のグローバルキャッシュ設定が上書きされます。
特定のレンダリングに対してキャッシュオプションを設定するのは便利です。例えば、特定のサイトではページコンテンツレンダリングをキャッシュしたい場合などです。
レンダリングのキャッシュをサイトレベルで設定するには:
-
sitecore///Presentation/Cache Settingsに移動し、ホームタブでコンポーネントキャッシュ設定をクリックします。

-
設定名を入力してOKをクリックします。
-
「 アイテム選択 」ダイアログボックスでLayout/Renderings/Feature/Experience Acceleratorに移動し、この設定を適用したいレンダリングをクリックし、矢印で「 選択 済み」フィールドに移動します。

-
キャッシュ セクションで 、キャッシュオプションを選択してください:

-
課題を公開しましょう。
セットプレースホルダーキャッシュ
プレースホルダーのキャッシュオプションは、レンダリング定義項目やサイトレベルのキャッシュ設定のグローバルキャッシュ設定を上書きします。
プレースホルダーのキャッシュ設定は、そのプレースホルダー内のすべてのレンダリングに影響を与えます。例えば、コンテナを使って他のレンダリングに追加のCSSスタイリングを追加する場合、そのコンテナのプレースホルダーのキャッシュ設定はコンテナ内のすべてのレンダリングに適用されます。
ページ上のプレースホルダーのキャッシュオプションを設定するには:
-
エクスペリエンスエディターでプレースホルダーをクリックし、「 **プレースホルダー設定を編集」**をクリックします。
-
「 プレースホルダー設定を選択する 」ダイアログボックスで、「 新しい設定を作成する」をクリックしてください。
-
もう一度 「仮の設定を編集 」をクリックし、キャッシュセクションで キャッシュオプションを選択してください。

特定のレンダリングキャッシュオプションを設定しましょう
特定のレンダリングでキャッシュオプションを設定すると、他のすべてのキャッシュ設定が上書きされます。これは、ユーザーのログイン情報(ユーザー名など)以外のすべてのユーザーに対して同じページが含まれている場合、非常に便利です。もしサイトレベルでキャッシュオプションを設定してすべてのユーザーのページをキャッシュしたい場合、異なるユーザー名の各ユーザーごとにページ全体が毎回キャッシュされます。この問題を解決するために、SXAではドーナツキャッシュを適用し、すべてのユーザーに対してページ全体のコピーを1つだけキャッシュできます。ただし、動的な部分だけが残ります。このセクションはキャッシュされたコンテンツの穴のようなもので(ドーナツのようなものです)。
ドーナツキャッシュは、ほとんどのページがほとんど変更されない場合、例えばリクエストパラメータに基づいて動的に変化する一部のセクションだけが例外となる場合に非常に有用です。例えば、ページのスニペットに第三者からブログを取得できるレンダリングなどです。サードパーティのウェブサイトを制御できず、コントローラーが故障する可能性があるため、この出力をキャッシュしたくありません。
別のシナリオとしては、埋め込まれたプレースホルダーが使われる場合もあります。例えば、タブのレンダリングを含むスプリッターなどです。スプリッターとタブレンダリングの両方にキャッシュが適用されています。パーソナライズやテストを有効にするために、タブアイテムのキャッシュを無効にすることができます。
!重要レンダリングがパーソナライズルールを使用している場合、そのレンダリングインスタンスの キャッシュ可能な チェックボックスをクリアする必要があります。詳細は「 パーソナライズとHTMLキャッシュ」をご覧ください。
特定のレンダリングキャッシュオプションを設定するには:
-
エクスペリエンスエディターで、該当するレンダリングをクリックし、「 その他」 をクリックして「 コンポーネントプロパティを編集」をクリックします。

-
コントロールプロパティダイアログボックスのキャッシュセクションで、「他のキャッシュ設定を無視」と「キャッシュ可能」のチェックボックスを選択し、その後「他のキャッシュオプション」を選択してください。または、レンダリングがキャッシュされるのを防ぐには、キャッシュ可能なチェックボックスをクリアしてください。