エクスペリエンスフラグメントコンポーネント(v1) experience-fragment-component
コンテンツ作成者は、コアコンポーネントのエクスペリエンスフラグメントコンポーネントを使用して、ローカライズされたサイト構造をサポートしながら、エクスペリエンスフラグメントのバリエーションをページに配置できます。
使用方法 usage
コアコンポーネントのエクスペリエンスフラグメントコンポーネントを使用すると、コンテンツ作成者が、既存のエクスペリエンスフラグメントバリエーションから選択してコンテンツページに配置できます。エクスペリエンスフラグメントコンポーネントでは、ローカライズされたサイト構造もサポートしています。
バージョンと互換性 version-and-compatibility
このドキュメントでは、2019年9月にコアコンポーネントのリリース 2.6.0 で導入されたエクスペリエンスフラグメントコンポーネント v1 について説明します。
ローカライズされたサイト構造のサポート localized-site-structure
エクスペリエンスフラグメントコンポーネントは、ローカライズされたサイト構造に適応でき、ページのローカリゼーションに基づいて適切なエクスペリエンスフラグメントをレンダリングします。それには、エクスペリエンスフラグメントが次の条件を満たす必要があります。
- エクスペリエンスフラグメントコンポーネントがテンプレートに追加される。
- このテンプレートが、
/content/<site>
配下のローカライズされた構造の一部となる新しいコンテンツページの作成に使用される。 - コンテンツページで参照されるエクスペリエンスフラグメントが、同じコンポーネント名を使用するなど、
/content/<site>
配下のサイトと同じパターンに従っており、/content/experience-fragments
配下のローカライズされたエクスペリエンスフラグメント構造の一部となる。
この場合、現在のページと同じローカリゼーション(言語、ブループリント、ライブコピーのいずれか)を持つフラグメントがテンプレートの一部としてレンダリングされます。
この動作は、テンプレートに追加されたエクスペリエンスフラグメントコンポーネントに限られます。個々のコンテンツページに追加されたエクスペリエンスフラグメントコンポーネントは、コンポーネント内で設定されたとおりのエクスペリエンスフラグメントレンディションをレンダリングします。
- エクスペリエンスフラグメントコンポーネントのローカライゼーション機能の仕組みの例については、以下のセクションを参照してください。
- コアコンポーネントのローカライゼーション機能の連携の例については、コアコンポーネントのローカライゼーション機能を参照してください。
例 example
コンテンツが次のような構造になっているとします。
/content
+-- experience-fragments
\-- wknd
+-- language-masters
+-- us
+-- en
+-- footerTextXf
\-- headerTextXf
\-- es
+-- footerTextXf
\-- headerTextXf
\-- ch
+-- de
+-- footerTextXf
\-- headerTextXf
+-- fr
+-- footerTextXf
\-- headerTextXf
\-- it
+-- footerTextXf
\-- headerTextXf
+-- wknd
+-- language-masters
+-- us
+-- en
\-- es
+-- ch
+-- de
+-- fr
\-- it
+-- wknd-events
\-- wknd-shop
/content/experience-fragments/wknd
配下の構造が /content/wknd
の構造を反映していることに注意してください。
このとき、エクスペリエンスフラグメントコンポーネント /content/experience-fragments/wknd/us/en/footerTextXf
がテンプレートに配置される場合、ローカライズされたページをそのテンプレートに基づいて作成すると、ローカライズされたコンテンツページに対応するローカライズされたエクスペリエンスフラグメントが自動的にレンダリングされます。
したがって、同じテンプレートを使用する /content/wknd/ch/de
配下のコンテンツページに移動すると、/content/experience-fragments/wknd/us/en/footerTextXf
ではなく /content/experience-fragments/wknd/ch/de/footerTextXf
がレンダリングされます。
フォールバック fallback
エクスペリエンスフラグメントコンポーネントでは、対応するローカライズされたコンポーネントを次の順序で探します。
- まず、言語ルートを探します。
- 言語ルートが見つからない場合は、ブループリントを探します。
- ブループリントが見つからない場合は、ライブコピーを探します。
- ライブコピーが見つからない場合は、コンポーネントで設定されているエクスペリエンスフラグメントがデフォルトで選択されます。
コンポーネント出力のサンプル sample-component-output
エクスペリエンスフラグメントコンポーネントを体験し、その設定オプションや HTML および JSON 出力の例を確認するには、コンポーネントライブラリを参照してください。
技術的詳細 technical-details
エクスペリエンスフラグメントコンポーネントに関する最新の技術ドキュメントについては、GitHub を参照してください。
コアコンポーネントの開発について詳しくは、コアコンポーネント開発者向けドキュメントを参照してください。
設定ダイアログ configure-dialog
設定ダイアログでは、ページでレンダリングするエクスペリエンスフラグメントバリエーションをコンテンツ作成者が選択できます。
「選択ダイアログを開く」ボタンを使用して、コンポーネントセレクターを開き、コンテンツページに追加するエクスペリエンスフラグメントコンポーネントバリエーションを選択します。
なお、エクスペリエンスフラグメントコンポーネントをテンプレートに追加する場合、エクスペリエンスフラグメントがローカライズされていれば、テンプレートは自動的にローカライズされます。したがって、ページ上にレンダリングされるものは、明示的に選択したコンポーネントと異なる場合があります。詳しくは、上記の例を参照してください。
また、ID を定義することもできます。このオプションを使用すると、HTML 内および データレイヤー内のコンポーネントの一意の識別子を制御できます。
- 空白のままにした場合、一意の ID が自動的に生成されます。生成された ID は結果のページを調べることで確認できます。
- ID を指定した場合、作者はその ID が一意であることを確認する必要があります。
- ID を変更すると、CSS、JS、およびデータレイヤーのトラッキングに影響を与える可能性があります。
デザインダイアログ design-dialog
デザインダイアログでは、エクスペリエンスフラグメントコンポーネントの使用時にコンテンツ作成者に提供されるオプションと、エクスペリエンスフラグメントコンポーネントの配置時のデフォルト設定をテンプレート作成者が定義できます。
「スタイル」タブ styles-tab
エクスペリエンスフラグメントコンポーネントは、AEM スタイルシステムをサポートしています。