Show Menu
SUJETS×

Fragments de contenu Configuration des composants pour le rendu

Il existe plusieurs services Définition des services avancés nécessitant une configuration avancés liés au rendu des fragments de contenu. Pour utiliser ces services, les types de ressources de ces composants doivent se faire connaître à la structure des fragments de contenu.
Pour ce faire, configurez le service OSGi - Configuration du composant Fragment de contenu.
Si vous n’avez pas besoin des services Définition des services avancés nécessitant une configuration avancés décrits ci-dessous, vous pouvez ignorer cette configuration.
Lorsque vous étendez ou utilisez des composants prêts à l’emploi, il n’est pas recommandé de modifier la configuration.
Vous pouvez créer un composant à partir de zéro qui utilise uniquement l’API Fragments de contenu, sans services avancés. Cependant, dans ce cas, vous devrez développer votre composant afin qu’il traite le traitement approprié.
Il est donc recommandé d’utiliser les composants principaux.

Définition des services avancés nécessitant une configuration

Les services qui nécessitent l’enregistrement d’un composant sont les suivants :
  • Déterminer correctement les dépendances au cours de la publication (c.-à-d. s’assurer que les fragments et modèles peuvent être publiés automatiquement avec une page s’ils ont changé depuis la dernière publication).
  • Prise en charge des fragments de contenu dans la recherche de texte intégral.
  • Gestion/gestion du contenu intermédiaire.
  • Gestion/gestion des fichiers multimédias mixtes.
  • Le répartiteur vire les fragments référencés (si une page contenant un fragment est republiée).
  • Utilisation du rendu basé sur les paragraphes.
Si vous avez besoin d’une ou de plusieurs de ces fonctionnalités, il est alors (généralement) plus facile d’utiliser la fonctionnalité prête à l’emploi, au lieu de la développer entièrement.

Service OSGi - Configuration du composant de fragment de contenu

La configuration doit être liée au service OSGi Content Fragment Component Configuration :
com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl
See Configuring OSGi for further details.
Par exemple :
La configuration OSGi est la suivante :
Libellé Configuration OSGi Description
Type de ressource dam.cfm.component.resourceType le type de ressource à enregistrer;p. ex.
core/wcm/components/contentfragment/v1/contentfragment
Propriété de référence dam.cfm.component.fileReferenceProp nom de la propriété contenant la référence au fragment ; par ex. fragmentPath ou fileReference
Propriété d’élément(s) dam.cfm.component.elementsProp nom de la propriété qui contient le ou les noms des éléments à rendre ;p. ex. elementName
Propriété de variation dam.cfm.component.variationProp nom de la propriété qui contient le nom de la variation à rendre ;p. ex. variationName
Pour certaines fonctionnalités (par exemple, pour générer uniquement une plage de paragraphes), vous devez respecter certaines conventions :
Nom de la propriété Description
paragraphRange
Propriété de chaîne qui définit la plage de paragraphes à générer en mode de rendu pour un élément unique.
Format:
  • 1 ou 1-3 ou 1-3;6;7-8 ou *-3;5-*
  • évalué uniquement si paragraphScope la valeur est définie sur range
paragraphScope
Propriété de chaîne qui définit le mode de sortie des paragraphes en mode de rendu d’un élément unique.
Valeurs :
  • all : pour rendre tous les paragraphes
  • range : pour rendre la plage de paragraphes fournie par paragraphRange
paragraphHeadings Propriété booléenne qui définit si les en-têtes (par exemple, h1 , h2 , h3 ) sont comptés comme des paragraphes ( true ) ou non ( false )
Cela peut changer dans les jalons 6.5 suivants.

Exemple

À titre d’exemple, reportez-vous aux sections suivantes (sur une instance AEM prête à l’emploi) :
/apps/core/wcm/config/com.adobe.cq.dam.cfm.impl.component.ComponentConfigImpl-core-comp-v1.config

Contient :
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"