Fragmentos de contenido Configurar componentes para procesamiento content-fragments-configuring-components-for-rendering
Hay varios servicios avanzados relacionados con la representación de fragmentos de contenido. Para utilizar estos servicios, los tipos de recurso de dichos componentes deben darse a conocer al marco de trabajo de fragmentos de contenido.
Para ello, configure el servicio OSGi - Configuración del componente Fragmento de contenido.
Esta información es necesaria cuando:
- Debe implementar su propio componente basado en fragmentos de contenido,
- Y necesita usar los servicios avanzados.
El Adobe recomienda utilizar los componentes principales.
-
Si no necesita los servicios avanzados que se describen a continuación, puede ignorar esta configuración.
-
Cuando amplía o utiliza los componentes predeterminados, no se recomienda cambiar la configuración de OSGi.
-
Puede escribir un componente desde cero que utilice solamente la API de fragmentos de contenido sin servicios avanzados. Sin embargo, en tal caso, deberá desarrollar el componente para que se ocupe del procesamiento adecuado.
Definición de servicios avanzados que necesitan configuración definition-of-advanced-services-that-need-configuration
Los servicios que requieren el registro de un componente son:
- Determinar correctamente las dependencias 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.
- Administración/administración de contenido intermedio.
- Administración de recursos de medios mixtos.
- Vaciar Dispatcher para fragmentos a los que se hace referencia (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, (por lo general) es más fácil utilizar los Servicios avanzados predeterminados, en lugar de desarrollarlos desde cero.
Servicio OSGi: configuración del componente Fragmento de contenido osgi-service-content-fragment-component-configuration
La configuración debe estar enlazada al servicio OSGi Configuración del componente Fragmento de contenido:
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
Por ejemplo:
La configuración de OSGi es:
dam.cfm.component.resourceType
El tipo de recurso que se va a registrar; por ejemplo,
core/wcm/components/contentfragment/v1/contentfragment
dam.cfm.component.fileReferenceProp
fragmentPath
o fileReference
dam.cfm.component.elementsProp
elementName
dam.cfm.component.variationProp
variationName
Para algunas funciones, el componente deberá adherirse a las convenciones predefinidas. La siguiente tabla detalla las propiedades que debe definir el componente para cada párrafo (es decir, jcr:paragraph
para cada instancia de componente) para que los servicios puedan detectarlas y procesarlas correctamente.
paragraphScope
Propiedad de cadena que define cómo se generarán los párrafos en modo de representación de elemento único.
Valores:
all
: para procesar todos los párrafosrange
: para representar el intervalo de párrafos proporcionado porparagraphRange
paragraphRange
Propiedad de cadena que define el intervalo de párrafos que se generará si se encuentra en modo de representación de un solo elemento.
Formato:
-
1
o1-3
o1-3;6;7-8
o*-3;5-*
-
indicador de rango;
separador de listas*
comodín
-
solo se evalúa si
paragraphScope
se establece enrange
paragraphHeadings
h1
, h2
, h3
) se cuentan como párrafos (true
) o no (false
)Ejemplos example
AEM Por ejemplo, consulte lo siguiente (en una instancia de aplicación predeterminada de la interfaz de usuario de la interfaz de usuario de la aplicación de configuración de la aplicación de configuración de la aplicación de configuración de la aplicación):
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config
Contiene lo siguiente:
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"