Modèles de fragment de contenu

Dernière mise à jour : 2023-12-07
ATTENTION

Les modèles de fragment de contenu sont recommandés pour créer tous les fragments de contenu.

Les modèles de fragment de contenu sont utilisés pour tous les exemples dans WKND.

REMARQUE

Avant la version 6.3 d’AEM, les fragments de contenu étaient créés à partir de modèles (templates) différents des modèles (models) actuels.

Les anciens modèles (templates) de fragment de contenu sont désormais obsolètes. Ils peuvent toujours être utilisés pour créer des fragments, mais il est recommandé d’utiliser à la place les nouveaux modèles de fragment de contenu. Aucune nouvelle fonctionnalité ne sera ajoutée aux modèles de fragment et elles seront supprimées dans une version ultérieure.

Les modèles sont sélectionnés lors de la création d’un fragment de contenu. Ils fournissent au nouveau fragment la structure de base, les éléments et la variation. Les modèles utilisés pour les fragments de contenu sont soumis au gestionnaire de configuration Granite.

Les modèles prêts à l’emploi sont stockés sous :

  • /libs/settings/dam/cfm/templates

Vous pouvez créer des modèles spécifiques à vos sites pour les fragments de contenu sous :

  • /apps/settings/dam/cfm/templates
    Emplacement servant à stocker des modèles prêts à l’emploi ou fournir à l’application des modèles spécifiques qui ne sont pas censés être étendus/modifiés au moment de l’exécution.

  • /conf/global/settings/dam/cfm/templates
    Emplacement des modèles spécifiques au client à l’échelle de l’instance et qui doivent être modifiés au moment de l’exécution.

L’ordre de priorité est (dans l’ordre décroissant) /conf, /apps, /libs.

ATTENTION

Vous ne devez rien modifier dans le chemin /libs.

En effet, le contenu de /libs est remplacé dès que vous mettez à niveau votre instance (et risque de l’être si vous appliquez un correctif ou un Feature Pack).

La méthode recommandée pour la configuration et d’autres modifications est la suivante :

  1. Recréez l’élément requis (c’est-à-dire, tel qu’il existe dans /libs) sous /apps

  2. Apportez les modifications désirées dans /apps.

La structure de base d’un modèle est conservée sous :

conf
  global
    settings
      dam
        cfm
          templates
            <template-name>
              ...

Avec la structure spécifique :

+ <template-name>
    - jcr:primaryType
    - jcr:title
    - jcr:description
    - initialAssociatedContent
    - precreateElements
    - version
    + elements
        - jcr:primaryType
        + <element-name>
            - jcr:primaryType
            - jcr:title
            - defaultContent
            - initialContentType
            - name
        ... + other element definitions
    + variations
        - jcr:primaryType
        + <variation-name>
            - jcr:primaryType
            - jcr:title
            - jcr:description
            - name
        ... + other variation definitions

Plus de détails sur les nœuds et leurs propriétés :

  • Modèle

    Nom Type Valeur
    <template-name> nt:unstructured Ce nœud est la racine de chaque modèle. Il est obligatoire et doit avoir un nom unique.
    jcr:title

    String

    obligatoire

    Le titre du modèle (affiché dans l’assistant Créer un fragment).
    jcr:description

    String

    facultatif

    Un texte qui décrit l’objet du modèle (affiché dans l’assistant Créer un fragment).
    initialAssociatedContent

    String[]

    facultatif

    Un tableau avec les chemins d’accès aux collections qui doivent être associées par défaut à un fragment de contenu nouvellement créé.
    precreateElements

    Boolean

    obligatoire

    true, si les sous-ressources représentant les éléments (à l’exception de l’élément principal) du fragment de contenu doivent être créées lors de la création du fragment de contenu ; false si elles doivent être créées « à la volée ».

    Remarque : actuellement, ce paramètre doit être défini sur true.

    version

    Long

    obligatoire

    Version de la structure de contenu ; actuellement pris en charge :

    Remarque : actuellement, ce paramètre doit être défini sur 2.

  • Éléments

    Nom Type Valeur
    elements

    nt:unstructured

    obligatoire

    Nœud contenant la définition des éléments du fragment de contenu. Il est obligatoire et doit contenir au moins un nœud enfant pour l’élément Principal mais peut contenir [1..n] nœuds enfants.

    Lorsque le modèle est utilisé, la sous-branche des éléments est copiée dans la sous-branche de modèle du fragment.

    Le premier élément (affiché dans CRXDE Lite) est automatiquement considéré comme l’élément Principal ; le nom du nœud n’a pas d’importance et le nœud lui-même n’a pas de signification particulière, mis à part le fait qu’il est représenté par la ressource principale ; les autres éléments sont traités comme des sous-ressources.

  • Nom de l’élément

    Nom Type Valeur
    <element-name> nt:unstructured Ce nœud définit un élément. Il est obligatoire et doit avoir un nom unique.
    jcr:title

    String

    obligatoire

    Titre de l’élément (affiché dans le sélecteur d’éléments de l’éditeur de fragments).
    defaultContent

    String

    facultatif

    par défaut : ""

    Contenu initial de l’élément ; utilisé uniquement si precreateElements = true
    initialContentType

    String

    facultatif

    par défaut : text/html

    Type de contenu initial de l’élément ; utilisé uniquement si precreateElements = true ; actuellement pris en charge :

    • text/html
    • text/plain
    • text/x-markdown
    name

    String

    obligatoire

    Nom interne de l’élément ; doit être unique pour le type de fragment.
  • Variations

    Nom Type Valeur
    variations

    nt:unstructured

    facultatif

    Ce nœud facultatif contient la définition des variantes initiales du fragment de contenu.
  • Nom de la variation

    Nom Type Valeur
    <variation-name>

    nt:unstructured

    requis si un nœud de variation est présent

    Définit une variation initiale.
    La variation est ajoutée à tous les éléments du fragment de contenu par défaut.

    La variation aura le même contenu initial que l’élément correspondant (voir defaultContent/ initialContentType).

    jcr:title

    String

    obligatoire

    Titre de la variation (affiché dans la Variation de l’éditeur de fragments (rail de gauche)).
    jcr:desciption

    String

    facultatif

    par défaut : ""

    Texte qui fournit une description de la variation (affichée dans l’onglet Variation de l’éditeur de fragments (rail de gauche)).

Sur cette page