ナビゲーションコンポーネントを使用すれば、グローバル化されたサイト構造を容易にナビゲートできます。
ナビゲーションコンポーネントリストには、サイトのユーザーがサイト構造を容易にナビゲートできるように、ページのツリーが一覧表示されます。
ナビゲーションコンポーネントは、サイトのグローバル化されたサイト構造を自動的に検出し、ローカライズされたページに自動的に適応することができます。さらに、シャドウリダイレクトページを使用してメインコンテンツ構造以外の構造を表すことで、任意のサイト構造をサポートできます。
編集ダイアログでは、ナビゲーションルートページおよびナビゲーションの深さをコンテンツ作成者が定義できます。デザインダイアログでは、ナビゲーションルートおよび深さのデフォルト値をテンプレート作成者が定義できます。
このドキュメントでは、2018年1月にコアコンポーネントのリリース 2.0.0 で導入されたナビゲーションコンポーネント v1 について説明します。
このドキュメントでは、ナビゲーションコンポーネント v1 について説明します。
ナビゲーションコンポーネントの現在のバージョンについて詳しくは、ナビゲーションコンポーネントのドキュメントを参照してください。
Web サイトは、多くの場合、様々な地域向けに複数の言語で提供されています。通常、ローカライズされた各ページには、ページテンプレートの一部としてナビゲーション要素が含まれます。ナビゲーションコンポーネントは、サイトのあらゆるページのテンプレートに一度配置すれば、グローバル化されたサイト構造に基づいて、ローカライズされた個々のページに自動的に適応できます。
コンテンツが次のような構造になっているとします。
/content
+-- wknd
+-- language-masters
+-- de
\-- experience
\-- arctic-surfing-in-lofoten
+-- en
\-- experience
\-- arctic-surfing-in-lofoten
+-- es
+-- fr
\-- it
+-- us
+-- en
\-- experience
\-- arctic-surfing-in-lofoten
\-- es
\-- ch
+-- de
\-- experience
\-- arctic-surfing-in-lofoten
+-- fr
\-- it
+-- wknd-events
\-- wknd-shop
サイト WKND では、ナビゲーションコンポーネントを、ヘッダーの一部としてページテンプレート上に配置するとよいでしょう。テンプレートの一部で、コンポーネントのナビゲーションルートを /content/wknd/language-masters/en
(そのサイトのマスターコンテンツが開始される場所)に設定できます。また、コンテンツツリー全体をコンポーネントに表示するのではなく、最初の 2 レベルを概要として表示したい場合は、ナビゲーション構造の深さを 2
に設定するとよいでしょう。
ナビゲーションルートの値を通じて、ナビゲーションコンポーネントは、/content/wknd/language-masters/en
の次からナビゲーションが開始されることを認識し、サイトの構造を(ナビゲーション構造の深さの値で定義されているとおり)2 レベル下まで繰り返すことでナビゲーションオプションを生成できます。
ユーザーが閲覧しているローカライズ済みページによらず、ナビゲーションコンポーネントは、現在のページの場所を認識し、ルートまで戻ってから、対応するページまで進むことで、対応するローカライズ済みページを見つけることができます。
したがって、訪問者が /content/ch/de/experience/arctic-surfing-in-lofoten
を閲覧している場合、コンポーネントは、/content/wknd/language-masters/de
に基づいてナビゲーション構造を生成する必要があることを認識します。同様に、訪問者が /content/us/en/experience/arctic-surfing-in-lofoten
を閲覧している場合、コンポーネントは、/content/wknd/language-masters/en
に基づいてナビゲーション構造を生成する必要があることを認識します。
場合によっては、実際のサイト構造とは異なるナビゲーションメニューを訪問者向けに作成する必要があります。例えば、プロモーションの場合は、コンテンツリストを並べ替えて、メニュー内の特定のコンテンツを強調表示するかもしれません。シャドウページは他のコンテンツページにリダイレクトするだけですが、これを使用して、ナビゲーションコンポーネントは必要に応じて任意のナビゲーション構造を生成できます。
それには、以下の手順を実行します。
この結果、ナビゲーションコンポーネントは、シャドウサイト構造に基づいてメニューをレンダリングします。コンポーネントによってレンダリングされるリンクは、シャドウページそのものではなく、シャドウページのリダイレクト先となる実際のコンテンツページを指しています。さらに、シャドウページに基づいたナビゲーションの場合でも、コンポーネントには実際のページの名前が表示されると共に、アクティブなページが正しく強調表示されます。ナビゲーションコンポーネントにより、事実上、シャドウページは訪問者に対して完全に透過的になります。
シャドウページの利用で、ナビゲーションオプションの柔軟性がはるかに高くなりますが、この構造の維持管理は完全に手動でおこなう必要があることに留意してください。実際のサイトコンテンツを再配置したり、コンテンツを追加または削除する場合は、必要に応じてシャドウ構造を手動で更新する必要があります。
シャドウサイト構造をレンダリングする場合、ナビゲーションロジックによって繰り返されるのはシャドウページだけです。このロジックでは、リダイレクト先の構造は繰り返されません。
ページにリダイレクトターゲットがある場合(外部 URL を指しているか別の AEM ページを指しているかに関係なく)、そのターゲットへのリンクを含むナビゲーションコンポーネントは、リダイレクトターゲットの URL を直接示します。
https://aemcomponents.dev
にリダイレクトするページ C を作成するhttps://aemcomponents.dev
を直接指します。ナビゲーションコンポーネントを体験し、その設定オプションや HTML および JSON 出力の例を確認するには、コンポーネントライブラリを参照してください。
ナビゲーションコンポーネントに関する最新の技術ドキュメントについては、GitHub を参照してください。
コアコンポーネントの開発について詳しくは、コアコンポーネント開発者向けドキュメントを参照してください。
コアコンポーネントリリース 2.1.0 の時点では、ナビゲーションコンポーネントは schema.org microdata をサポートしています。
編集ダイアログでは、ナビゲーションのルートページとナビゲーション構造の深さをコンテンツ作成者が定義できます。
「アクセシビリティ」タブでは、コンポーネントの「ARIA アクセシビリティ」ラベルの値を設定できます。
デザインダイアログでは、コンテンツ作成者に表示されるナビゲーションルートページおよびナビゲーションの深さのデフォルト値をテンプレート作成者が設定できます。
ナビゲーションコンポーネントは、AEM スタイルシステムをサポートしています。
ナビゲーションコンポーネントは、Adobe Client Data Layer をサポートしています。