コアコンポーネントのローカライゼーション機能 localization-features-of-the-core-components
多くの Web サイトでは、複数の言語や地域に、ローカライズされた形式でコンテンツを配信する必要があります。選択されたコアコンポーネントは、スマートリファレンス解決機能を備えており、ローカライズされたサイト構造に基づいてローカライズされたすべてのコンテンツに自動的に適応するので、統合されたテンプレートを簡単に作成できます。
例 - ナビゲーションとフッターを含むローカライズされたページ example
ほとんどのサイトでは、すべてのページにフッターを配置する必要があります。フッターは、通常、ページのすべてのコンテンツで一致します。ただし、ローカライズされたコンテンツページの場合は、ローカライズされたヘッダーまたはフッターを表示する必要があります。
ナビゲーションコンポーネントも同様に、通常、すべてのページに表示する必要があります。また、ローカライズされたページのコンテンツを反映する必要があります。
AEM の編集可能なテンプレートと共に、ナビゲーションコアコンポーネントとエクスペリエンスコアコンポーネントのローカライゼーション機能を使用すると、簡単な作業になります。この例は、言語ナビゲーションコンポーネントを使用するように拡張することもできます。
コンテンツ構造 content-structure
AEM とそのコアコンポーネントのすべてのローカライゼーション機能は、ローカライズされたコンテンツに対して明確で論理的なコンテンツ構造に依存しています。
サイトを my-site
と呼ぶことにして、ここに配置されているとします。
/content/my-site
また、英語でサイトを作成し、フランス語でも提供するとします。この場合、ページ my-page
を作成すれば、サイトのコンテンツツリーの 2 つのローカライゼーションブランチで見つかります。
/content
\-- my-site
+-- en
\-- my-page
\-- fr
\-- my-page
追加のサイトページは、これらのローカライゼーションブランチ以下で作成します。
ページフッターは通常、エクスペリエンスフラグメントを使用して作成されるので、ページと同様に英語版とフランス語版が必要になります。ただし、エクスペリエンスフラグメントはページではなく、ページ間で再利用できるページの一部なので、ページの他の部分のように /content
配下にはありません。その代わり、独自のフォルダー配下にありますが、ローカライズする必要があるので、ページフッターの構造もサイトのローカライゼーション構造を反映する必要があります。
/content
+-- experience-fragments
+-- en
\-- footer
\-- fr
\-- footer
\-- my-site
+-- en
\-- my-page
\-- fr
\-- my-page
ローカライゼーション構造を反映することによって、コアコンポーネントは、対応するページに必要なローカライズコンテンツを見つけることができます。
ページフッター - エクスペリエンスフラグメント xf-footer
エクスペリエンスフラグメントコンポーネントは非常に柔軟で、ページのヘッダーまたはフッターに適しています。
例で取りあげている仮の Web サイトは英語とフランス語で提供されているので、どちらも footer
と呼ばれる 2 つのエクスペリエンスフラグメントを前に説明した場所に作成する必要があります。
ページテンプレート template
フッターは各ページに表示されるので、標準のページテンプレートにエクスペリエンスフラグメントを追加する必要があります。
テンプレートはシンプルな my-template
という名前で、他のテンプレートと共に配置されます。
/conf/my-site/settings/wcm/templates/my-template
このテンプレートに、ページのベースにする基本コンポーネントを追加します。
-
- ナビゲーションコンポーネントは各ページの上部に表示されます。
- ナビゲーションコンポーネントでは、ナビゲーションルートを定義し、サイトのナビゲーション構造が開始する場所をコンポーネントに示します。
- ナビゲーションルートに基づいて、コンポーネントは対応するローカライズされたコンテンツを自動的に見つけることができます。
-
- 作成者がページに追加のコンテンツを配置できるように、各ページに編集可能なコンテナコンポーネントが含まれます。
-
- ここでは、フッターを表すフラグメントのオーサリング言語で、エクスペリエンスフラグメントコンポーネントにフラグメントパスを指定します。
- 指定したフラグメントパスと、ローカライズされたページ構造を反映するエクスペリエンスフラグメントの構造に基づいて、コンポーネントは、対応するローカライズされたコンテンツを自動的に検索します。
ページ pages
サイトの構造とテンプレートの設定時に手間のかかる作業をしておくと、あとは単にページに必要なコンテンツを追加するだけで済みます。テンプレートとコンポーネントのローカライゼーションロジックのおかげで、ナビゲーションとフッターが自動的にページに追加され、ローカライズされます。
例えば、作成者はテキストコンポーネントなどのコンテンツを英語およびフランス語のページに追加するだけで済みます(下で、青で表示)。
ナビゲーションコンポーネントとエクスペリエンスフラグメントコンポーネントは、ページテンプレートから取得され、ローカライゼーション構造とページ自体の場所に基づいて、適切なコンテンツを自動的に表示することを理解しています(下で、白で表示)。
全体像 fitting-it-all-together
以下は、これらのシンプルで強力な要素が連携して、コンテンツ作成者向けにローカライズされたページが配信される仕組みの全体像です。