Modèles de fragment de contenu

ATTENTION

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

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

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 pour superposer des modèles d’usine ou fournir des modèles spécifiques à l’application au client qui ne sont pas destinés à être étendus/modifiés au moment de l’exécution.

  • /conf/global/settings/dam/cfm/templates
    Emplacement pour les modèles spécifiques au client à l’échelle de l’instance 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 stockée sous :

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

La structure spécifique étant :

+ <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 noeud est la racine de chaque modèle. Il est obligatoire et doit avoir un nom unique.
    jcr:title

    String

    required

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

    String

    facultatif

    Texte décrivant l’objectif du modèle (affiché dans l’assistant Créer un fragment).
    initialAssociatedContent

    String[]

    facultatif

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

    Boolean

    required

    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 s’ils doivent être créés "à la volée".

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

    version

    Long

    required

    la 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

    required

    Noeud contenant la définition des éléments du fragment de contenu. Elle est obligatoire et doit contenir au moins un noeud enfant pour l’élément Main , mais peut contenir [1..n] nœuds enfants.

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

    Le premier élément (affiché en CRXDE Lite) est automatiquement considéré comme l’élément main ; le nom du noeud n’est pas pertinent et le noeud lui-même n’a pas de signification particulière, à l’exception du 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 noeud définit un élément . Il est obligatoire et doit avoir un nom unique.
    jcr:title

    String

    required

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

    String

    facultatif

    default: ""

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

    String

    facultatif

    default: 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

    required

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

    Nom Type Valeur
    variations

    nt:unstructured

    facultatif

    Ce noeud 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 noeud 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

    required

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

    String

    facultatif

    default : ""

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

Sur cette page