配置用于呈现的组件的内容片段 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配置为:

标签
OSGi配置
描述
资源类型
dam.cfm.component.resourceType

要注册的资源类型;例如,

core/wcm/components/contentfragment/v1/contentfragment

引用属性
dam.cfm.component.fileReferenceProp
包含片段引用的属性的名称;例如, fragmentPathfileReference
元素属性
dam.cfm.component.elementsProp
包含要呈现的元素名称的属性的名称;例如,elementName
变量属性
dam.cfm.component.variationProp
包含要呈现的变量的名称的属性的名称;例如,variationName

对于某些功能,您的组件必须遵循预定义惯例。 下表详细列出了每个段落(即, jcr:paragraph (对于每个组件实例),以便服务能够正确检测和处理它们。

属性名称
描述
paragraphScope

一个字符串属性,定义在中时如何输出段落 单元素渲染模式.

值:

  • all :渲染所有段落
  • range :呈现以下项提供的段落范围: paragraphRange
paragraphRange

一个字符串属性,定义在中要输出的段落范围 单元素渲染模式.

格式:

  • 11-31-3;6;7-8*-3;5-*

    • - 范围指示器
    • ; 列表分隔符
    • * 通配符
  • 仅在以下情况下评估 paragraphScope 设置为 range

paragraphHeadings
一个布尔属性,定义标题(例如, h1h2h3)将被计算为段落(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