Algunas funciones de fragmento de contenido requieren la aplicación de AEM 6.4 Service Pack 2 (6.4.2.0).
No se recomienda ampliar o cambiar los componentes reales utilizados en el Editor de fragmentos, ya que siguen sujetos a cambios.
Consulte la Content Fragment Management API - Client-Side.
Ahora se recomienda el componente principal del fragmento de contenido. Consulte Desarrollo de componentes principales para obtener más detalles.
Esta sección detalla el componente original entregado para su uso con fragmentos de contenido (Fragmento de contenido en el grupo General).
Los fragmentos de contenido de Adobe Experience Manager (AEM) se crean y administran como recursos independientes de la página. Permiten crear contenido neutro con respecto al canal, así como variaciones (posiblemente específicas del canal). Después se pueden usar estos fragmentos, y sus variaciones, al crear páginas de contenido. También puede utilizar un recurso de fragmento de contenido existente arrastrándolo desde el navegador de recursos a la página (como en el caso de otros componentes basados en recursos, como la imagen del componente base). El componente de fragmento de contenido listo para usar solo muestra un elemento del fragmento de contenido al que se hace referencia. Mediante el cuadro de diálogo de componentes puede definir el elemento variación y rango de párrafos de fragmento que desea mostrar en la página.
Este componente de fragmento de contenido se introdujo en AEM 6.2 como una versión mejorada del componente Artículo, que ha quedado obsoleto.
Los fragmentos de contenido no son compatibles con la IU clásica.
El componente Fragmento de contenido se utiliza para contener una referencia a un recurso de fragmento de contenido (recursos de texto mejorados de forma efectiva). El tipo de recurso para el fragmento de contenido es:
dam/cfm/components/contentfragment/contentfragment
La referencia se define en la propiedad:
fileReference
Solo el editor de la IU táctil admite totalmente los componentes de fragmento de contenido, que incluye la biblioteca del cliente:
cq.authoring.editor.plugin.cfm
Esta biblioteca agrega al editor funciones específicas de los fragmentos de contenido. Por ejemplo, está disponible la compatibilidad con la capacidad de agregar y configurar fragmentos de contenido en la página, la capacidad de buscar recursos de fragmentos de contenido en el navegador de recursos y el contenido asociado en el panel lateral.
El componente Fragmento de contenido t le permite soltar componentes adicionales entre los distintos párrafos del elemento mostrado. Básicamente, el elemento mostrado está compuesto de diferentes párrafos (cada párrafo está marcado por un retorno de carro). Entre cada uno de estos párrafos, puede insertar contenido con otros componentes.
Desde un punto de vista técnico, cada párrafo del elemento mostrado reside en su propio parsys y cada componente que agregue entre los párrafos se insertará (debajo del capó) en el parsys.
En otras palabras, si la instancia del componente de fragmento de contenido está compuesta por tres párrafos, el componente tendrá tres parámetros diferentes en el repositorio. Todo el contenido intermedio que se agrega al fragmento de contenido se encuentra en realidad dentro de estos parámetros.
En el repositorio, el contenido intermedio se almacena en relación con su posición dentro de la estructura general de párrafo, es decir, no está adjunto al contenido real del párrafo.
Para ilustrarlo, consideremos que tenemos:
Instancia de un fragmento de contenido compuesto por tres párrafos
Y que ya se ha insertado algún contenido después del segundo párrafo
Básicamente, si cambia la estructura de párrafo de esta instancia (cambiando la variación, elemento o rango de párrafos mostrados), podría afectar al contenido intermedio que se muestra cuando el contenido del fragmento de contenido:
Se edita y se agrega otro párrafo antes del segundo párrafo:
Se edita y se elimina el segundo párrafo:
Está configurado para que solo se muestre el primer párrafo:
Para utilizar el componente de fragmento de contenido incorporado como modelo de extensión, debe respetar el siguiente contrato:
Vuelva a utilizar la secuencia de comandos de procesamiento HTL y su POJO asociado para ver cómo se implementa la función de contenido intermedio.
Reutilice el nodo de fragmento de contenido: cq:editConfig
afterinsert
/ afteredit
/ afterdelete
se utilizan para desencadenar eventos JS. Estos eventos se gestionarán en la biblioteca del cliente cq.authoring.editor.plugin.cfm
para mostrar el contenido asociado en el panel lateral.cq:dropTargets
están configurados para admitir la posibilidad de arrastrar recursos de fragmento de contenido.cq:inplaceEditing
está configurado para admitir la creación de un fragmento de contenido en el editor de páginas. El editor in-situ de fragmentos se define en la biblioteca de cliente cq.authoring.editor.plugin.cfm
y permite un vínculo rápido para abrir el elemento/variación actual en el editor de fragmentos.La Administración de fragmentos de contenido utiliza un proceso de procesamiento interno para generar el resultado HTML final de una página. Esto lo utiliza internamente el componente Fragmento de contenido, pero también el proceso en segundo plano que actualiza los fragmentos a los que se hace referencia en las páginas de referencia.
Internamente, el reescritor de Sling se utiliza para esa representación. La configuración respectiva se encuentra en /libs/dam/config/rewriter/cfm
y se puede ajustar si es necesario. Consulte el Apache Sling Rewriter para obtener más información.
La configuración lista para usar utiliza los siguientes transformadores:
transformer-cfm-payloadfilter
- solo para recuperar la body
parte ( <body>...</body>
) del HTML del fragmento
transformer-cfm-parfilter
- filtros los párrafos no deseados si se especifica un intervalo de párrafos (como se puede hacer con el componente Fragmento de contenido)
transformer-cfm-assetprocessor
- se utiliza internamente para recuperar una lista de los recursos incrustados en el fragmento
El proceso de procesamiento se expone a través de [com.adobe.cq.dam.cfm.content.FragmentRenderService](https://helpx.adobe.com/es/experience-manager/6-4/sites/developing/using/reference-materials/javadoc/com/adobe/cq/dam/cfm/ContentFragment.html)
y se puede aprovechar (por ejemplo) mediante componentes personalizados si es necesario.