複数のページ レンダリング コンポーネントで共有されるヘッダー コンポーネントが必要です。ヘッダー コンポーネントにはテキスト ラベルがあります。このテキスト ラベルの値をすべてのページ コンポーネントで使用できるようにするにはどうすればよいですか。
<cq:include>
共通の形式へのパスを作成する必要がありますか?
複数のページ レンダリング コンポーネントで共有されるヘッダー コンポーネントが必要です。ヘッダー コンポーネントにはテキスト ラベルがあります。このテキスト ラベルの値をすべてのページ コンポーネントで使用できるようにするにはどうすればよいですか。
<cq:include>
共通の形式へのパスを作成する必要がありますか?
設計モードは、正しく理解されていれば、非常にうまく機能します。ただし、ページのアクティブ化と同じ方法でコンテンツを複製しないため、作成者が混乱する可能性があります。また、共有モデルは正確なページ タイプに限定されます。これは、必要な粒度である場合とそうでない場合があります。
CQ5 のベスト プラクティス ( https://dev.day.com/docs/en/cq/current/developing/developing_guidelines_bestpractices.html ) から、彼らは段落システム (iparsys による継承/共有) を強く推奨しています。 iparsys
同じ名前のページ テンプレートは、異なるページ テンプレート間で共有できます (デザイン モードは単一のテンプレート タイプにのみ適用されます)。
この機能は、ACS AEM Commons で共有コンポーネント プロパティとして提供されるようになりました - http://adobe-consulting-services.github.io/acs-aem-commons/features/shared-component-properties.html
標準のコンテンツ アクティベーションと国際化 (ホームページの下に保存される値) およびコンテンツに期待されるその他すべてをサポートします。
目標が「複数のページ レンダリング コンポーネント間で」共有することである場合、デザイン ダイアログは、ページが同じレンダリング コンポーネントを共有する場合にのみ役立ちます。ページとそのすべてのサブページにヘッダー コンポーネントを表示する場合は、iparsys を使用する必要があります。そのヘッダー コンポーネントのプロパティを再利用するだけの場合は、固定パス (ページ コンポーネントの cq:include) が必要であり、他のページ レンダリング コンポーネントで必要なプロパティを参照できます。コンポーネントを持つという考えを壊すので、そのアプローチはお勧めしません。すべてが密結合になります。
これらのプロパティをページ レベル (最上位の親ページ) で保存し、サブページで InheritanceValueMap を使用してそれらのプロパティを読み取ることもできます。
ヘッダー コンポーネントを作成し、それを<cq:include>
ベース テンプレート/ページに含めることができます。このベース テンプレート/ページは、他のすべてのテンプレートに継承されます。このようにして、ベース ページで構成されたヘッダーは、さまざまなテンプレート/ページ コンポーネントで使用できます。