有幾個 高級服務 與內容片段的呈現相關。 要使用這些服務,此類元件的資源類型必須使內容片段框架知道它們本身。
通過配置 OSGi服務 — 內容片段元件配置。
在以下情況下需要此資訊:
建議使用核心元件。
如果你不需要 高級服務 如下所述,您可以忽略此配置。
擴展或使用出廠設定元件時,建議不要更改OSGi配置。
您可以從頭開始編寫僅使用內容片段API的元件,但不提供高級服務。 但是,在這種情況下,您必須開發元件,以便處理相應的處理。
因此,建議使用核心元件。
需要註冊元件的服務包括:
如果您需要這些功能中的一個或多個,則(通常)使用現成的高級服務會更容易,而不是從頭開始開發。
配置需要綁定到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 |
一個字串屬性,它定義在中時如何輸出段落 單元渲染模式。 值:
|
paragraphRange |
一個字串屬性,它定義要輸出的段落範圍(如果在) 單元渲染模式。 格式:
|
paragraphHeadings |
一個布爾屬性,它定義標題(例如, h1 。 h2 。 h3 )作為段落(true )或不(false ) |
作為示例,請參見以下(在現成實例上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"