Fragmentos de contenido Configurar componentes para procesamiento

Hay varias servicios avanzados relacionada con la renderización de fragmentos de contenido. Para utilizar estos servicios, los tipos de recurso de dichos componentes deben darse a conocer al marco de fragmentos de contenido.

Esto se hace configurando la variable Servicio OSGi: Configuración de componentes de fragmento de contenido.

Esta información es necesaria cuando:

  • Debe implementar su propio componente basado en fragmentos de contenido,
  • Y debe utilizar los servicios avanzados.

Se recomienda utilizar los componentes principales.

PRECAUCIÓN
  • Si no necesita la variable servicios avanzados a continuación, puede ignorar esta configuración.

  • Al ampliar o utilizar los componentes integrados, no se recomienda cambiar la configuración de OSGi.

  • Puede escribir un componente desde cero que utilice únicamente la API de fragmentos de contenido sin servicios avanzados. Sin embargo, en tal caso, tendrá que desarrollar su componente para que gestione el procesamiento adecuado.

Por lo tanto, se recomienda utilizar los componentes principales.

Definición de servicios avanzados que necesitan configuración

Los servicios que requieren el registro de un componente son:

  • Determinar las dependencias correctamente durante la publicación (es decir, asegurarse de que los fragmentos y modelos se puedan publicar automáticamente con una página si han cambiado desde la última publicación).
  • Compatibilidad con fragmentos de contenido en la búsqueda de texto completo.
  • La gestión/gestión de contenido intermedio.
  • La gestión/gestión de recursos de medios mixtos.
  • Vaciado de Dispatcher para fragmentos referenciados (si se vuelve a publicar una página que contiene un fragmento).
  • Uso de la renderización basada en párrafos.

Si necesita una o más de estas funciones, entonces (normalmente) es más fácil utilizar los servicios avanzados predeterminados, en lugar de desarrollarlos desde cero.

Servicio OSGi: Configuración de componentes de fragmento de contenido

La configuración debe estar enlazada al servicio OSGi Configuración del componente de fragmento de contenido:

com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl

NOTA

Consulte Configuración de OSGi para obtener más información.

Por ejemplo:

Configuración de OSGi Configuración de componentes de fragmento de contenido

La configuración OSGi es:

Etiqueta Configuración de OSGi
Descripción
Tipo de medio dam.cfm.component.resourceType El tipo de recurso que se va a registrar; p. ej.

core/wcm/components/contentfragment/v1/contentfragment

Propiedad de referencia dam.cfm.component.fileReferenceProp El nombre de la propiedad que contiene la referencia al fragmento; p. ej. fragmentPath o fileReference
Propiedad Element(s) dam.cfm.component.elementsProp El nombre de la propiedad que contiene los nombres de los elementos que se van a procesar; p. ej.elementName
Propiedad de variación
dam.cfm.component.variationProp El nombre de la propiedad que contiene el nombre de la variación que se va a procesar; p. ej.variationName

Para algunas funciones, el componente deberá adherirse a convenciones predefinidas. La siguiente tabla detalla las propiedades que su componente debe definir para cada párrafo (p. ej. jcr:paragraph para cada instancia de componente) para que los servicios puedan detectarlos y procesarlos correctamente.

Nombre de propiedad Descripción
paragraphScope

Una propiedad de cadena que define cómo se deben generar los párrafos si se encuentra en modo de procesamiento de un solo elemento.

Valores:

  • all : para procesar todos los párrafos
  • range : para representar el rango de párrafos proporcionado por paragraphRange
paragraphRange

Una propiedad de cadena que define el rango de párrafos que se van a generar si se encuentra en modo de procesamiento de un solo elemento.

Formato:

  • 1 o 1-3 o 1-3;6;7-8 o *-3;5-*
    • - indicador de intervalo
    • ; separador de lista
    • * comodín
  • solo se evalúa si paragraphScope está configurado como range
paragraphHeadings Una propiedad booleana que define si los encabezados (por ejemplo, h1, h2, h3) se cuentan como párrafos (true) o no (false)

Ejemplo

Como ejemplo, consulte lo siguiente (en una instancia de AEM predeterminada):

/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config

Contiene:

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"

En esta página