配置用于呈现的组件的内容片段 content-fragments-configuring-components-for-rendering
有几个高级服务与内容片段的呈现相关。 要使用这些服务,必须使内容片段框架知道这些组件的资源类型。
这是通过配置OSGi服务 — 内容片段组件配置完成的。
在以下情况下,需要提供此信息:
- 您需要实施自己的基于内容片段的组件,
- 还需要使用高级服务。
Adobe建议使用核心组件。
CAUTION
-
如果您不需要下面描述的高级服务,则可以忽略此配置。
-
当您扩展或使用现成的组件 时,不建议更改OSGi配置。
-
您可以从头开始编写只使用内容片段API而不使用高级服务的组件。 但是,在这种情况下,您必须开发组件,以便它处理相应的处理。
因此,建议使用核心组件。
需要配置的高级服务的定义 definition-of-advanced-services-that-need-configuration
需要注册组件的服务包括:
- 在发布期间正确确定依赖关系(即,如果片段和模型自上次发布以来已更改,请确保它们可以随页面自动发布)。
- 支持全文搜索中的内容片段。
- 中间内容的管理/处理。
- 管理/处理 混合媒体资产。
- Dispatcher刷新引用的片段(如果重新发布包含片段的页面)。
- 使用基于段落的渲染。
如果您需要这些功能中的一个或多个功能,则(通常)使用现成的高级服务比从头开始开发更容易。
OSGi服务 — 内容片段组件配置 osgi-service-content-fragment-component-configuration
该配置必须绑定到OSGi服务 内容片段组件配置:
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
NOTE
有关详细信息,请参阅OSGi配置。
例如:
OSGi配置为:
标签
OSGi配置
描述
资源类型
dam.cfm.component.resourceType
要注册的资源类型;例如,
core/wcm/components/contentfragment/v1/contentfragment
引用属性
dam.cfm.component.fileReferenceProp
包含对片段的引用的属性的名称;例如,
fragmentPath
或 fileReference
元素属性
dam.cfm.component.elementsProp
包含要呈现的元素名称的属性的名称;例如,
elementName
变量属性
dam.cfm.component.variationProp
包含要呈现的变量的名称的属性的名称;例如,
variationName
对于某些功能,您的组件必须遵循预定义惯例。 下表详细列出了需要由组件为每个段落(即每个组件实例的jcr:paragraph
)定义的属性,以便服务能够正确检测并处理这些属性。
属性名称
描述
paragraphScope
一个字符串属性,它定义在 单元素呈现模式 下段落的输出方式。
值:
all
:渲染所有段落range
:呈现以下项提供的段落范围:paragraphRange
paragraphRange
一个字符串属性,定义在 单元素渲染模式 下要输出的段落范围。
格式:
-
1
或1-3
或1-3;6;7-8
或*-3;5-*
-
范围指示器;
列表分隔符*
通配符
-
仅在
paragraphScope
设置为时评估range
paragraphHeadings
一个布尔属性,定义标题(例如
h1
、h2
、h3
)是否计为段落(true
)(false
)示例 example
例如,请参阅以下内容(在现成的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"
recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab