コンテンツフラグメントのレンダリングには、いくつかのアドバンスドサービスがあります。これらのサービスを使用するには、そのようなコンポーネントのリソースタイプが、コンテンツフラグメントフレームワークに存在を認識させる必要があります。
これは、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 |
一部の機能(例えば、段落範囲のみをレンダリングする場合)では、いくつかの規則に従う必要があります。
プロパティ名 | 説明 |
paragraphRange |
単一要素のレンダリングモードの場合に出力される段落の範囲を定義する string プロパティ。 形式:
|
paragraphScope |
単一要素のレンダリングモードで段落を出力する方法を定義する string プロパティ。 値:
|
paragraphHeadings |
見出し(例えば、h1 、h2 、h3 など)を段落としてカウントするか(true )、カウントしないか(false )を定義する boolean プロパティ。 |
これは、6.5 以降のマイルストーンで変更される可能性があります。
例として、次を参照してください(標準搭載の 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"