有好几个 高级服务 与内容片段的呈现相关。 要使用这些服务,内容片段框架必须了解此类组件的资源类型。
这是通过配置 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 |
对于某些功能(例如,仅呈现段落范围),您必须遵守某些惯例:
属性名称 | 描述 |
paragraphRange |
一个字符串属性,定义要在以下情况下输出的段落范围: 单元素渲染模式. 格式:
|
paragraphScope |
一个字符串属性,定义在中时如何输出段落 单元素渲染模式. 值:
|
paragraphHeadings |
一个布尔属性,定义标题(例如, h1 , h2 , h3 )将被计算为段落(true )或不是(false ) |
这可能在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"