コンテンツフラグメントのレンダリングには、いくつかのアドバンスドサービスがあります。これらのサービスを使用するには、そのようなコンポーネントのリソースタイプが、コンテンツフラグメントフレームワークに存在を認識させる必要があります。
これは、OSGi サービス - コンテンツフラグメントコンポーネントの設定を設定しておこないます。
この情報は、次の場合に必要です。
コアコンポーネントを使用することをお勧めします。
以下に説明するアドバンスドサービスが必要ない場合、この設定は無視できます。
標準搭載のコンポーネントを拡張または使用する場合、OSGi の設定を変更しないことをお勧めします。
アドバンスドサービスを使用することなく、コンテンツフラグメント API のみを使用するコンポーネントを新規に作成できます。ただし、この場合は、適切な処理をおこなうようにコンポーネントを開発する必要がありますので、
コアコンポーネントの使用をお勧めします。
コンポーネントの登録を必要とするサービスは、次のとおりです。
これらの機能を 1 つ以上使用する必要がある場合は(通常)、標準搭載のアドバンスドサービスを使用するほうが、一から開発するよりも簡単です。
設定は、OSGi サービスコンテンツフラグメントコンポーネントの設定に結び付ける必要があります。
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
詳しくは、OSGi の設定を参照してください。
次に例を示します。
OSGi の設定は次のとおりです。
ラベル | OSGi 設定 |
説明 |
リソースタイプ | dam.cfm.component.resourceType |
登録するリソースタイプ。例:
|
参照のプロパティ | dam.cfm.component.fileReferenceProp |
フラグメントへの参照を含んだプロパティの名前。例:fragmentPath または fileReference |
要素のプロパティ | dam.cfm.component.elementsProp |
レンダリングする要素の名前を含んだプロパティの名前。例:elementName |
バリエーションのプロパティ |
dam.cfm.component.variationProp |
レンダリングするバリエーションの名前を含んだプロパティの名前。例:variationName |
一部の機能については、コンポーネントは定義済みの規則に従う必要があります。次の表に、サービスが適切に検出して処理できるよう、各段落に対してコンポーネントごとに定義する必要があるプロパティ(各コンポーネントインスタンスに対する jcr:paragraph
)の詳細を示します。
プロパティ名 | 説明 |
paragraphScope |
単一要素のレンダリングモードで段落を出力する方法を定義する string プロパティ。 値:
|
paragraphRange |
単一要素のレンダリングモードの場合に出力される段落の範囲を定義する string プロパティ。 形式:
|
paragraphHeadings |
見出し(例えば、h1 、h2 、h3 など)を段落としてカウントするか(true )、カウントしないか(false )を定義する boolean プロパティ。 |
例として、次を参照してください(標準搭載の AEM インスタンス上)。
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config
次を含む:
dam.cfm.component.resourceType="core/wcm/components/contentfragment/v1/contentfragment"
dam.cfm.component.fileReferenceProp="fragmentPath"
dam.cfm.component.elementsProp="elementName"
dam.cfm.component.variationProp="variationName"