Modelli di frammento di contenuto

ATTENZIONE

Alcune funzionalità per i frammenti di contenuto richiedono l’applicazione di AEM 6.4 Service Pack 2 (6.4.2.0).

ATTENZIONE

Per la creazione di tutti i frammenti è ora consigliabile utilizzare modelli di frammenti di contenuto.

I modelli di frammento di contenuto vengono utilizzati per tutti gli esempi in We.Retail.

I modelli vengono selezionati al momento della creazione di un frammento di contenuto. Forniscono al nuovo frammento la struttura di base, gli elementi e la variante. I modelli utilizzati per i frammenti di contenuto sono soggetti a Granite Configuration Manager.

I modelli predefiniti sono disponibili in:

  • /libs/settings/dam/cfm/templates

È possibile creare modelli specifici per il sito per i frammenti di contenuto in:

  • /apps/settings/dam/cfm/templates

    Posizione per sovrapporre i modelli out-of-the-box o fornire modelli specifici per i clienti a livello di applicazione che non devono essere estesi o modificati in fase di esecuzione.

  • /conf/global/settings/dam/cfm/templates

    Il percorso per i modelli specifici per i clienti dell'istanza che devono essere modificati in fase di esecuzione.

L'ordine di precedenza è (in ordine decrescente) /conf, /apps, /libs.

ATTENZIONE

Non devi cambiare nulla nel /libs percorso.

Questo perché il contenuto di /libs viene sovrascritto al successivo aggiornamento dell’istanza (e potrebbe essere sovrascritto quando si applica un hotfix o un feature pack).

Il metodo consigliato per la configurazione e altre modifiche è:

  1. Ricreare l'elemento richiesto (ovvero come esiste in /libs) in /apps

  2. Apportare modifiche all'interno /apps

La struttura di base di un modello si trova in:

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

La struttura specifica è:

+ <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 

Ulteriori dettagli sui nodi e le relative proprietà sono:

  • Modello
Nome Tipo Valore
<template-name> nt:unstructured Questo nodo è il nodo principale per ciascun modello. È obbligatorio e deve avere un nome univoco.
jcr:title

String

required

Titolo del modello (visualizzato nella procedura guidata Crea frammento ).
jcr:description

String

facoltativo

Testo che descrive lo scopo del modello (visualizzato nella procedura guidata Crea frammento ).
initialAssociatedContent

String[]

facoltativo

Un array con percorsi alle raccolte che per impostazione predefinita dovrebbero essere associate a un frammento di contenuto appena creato.
precreateElements

Boolean

required

true, se le risorse secondarie che rappresentano gli elementi (tranne l'elemento principale) del frammento di contenuto devono essere create al momento della creazione del frammento di contenuto; false se devono essere create "al volo".

Nota: al momento questo parametro deve essere impostato su true.

version

Long

required

Versione della struttura del contenuto; attualmente supportato:

Nota: al momento questo parametro deve essere impostato su 2.

  • Elementi
Nome Tipo Valore
elements

nt:unstructured

required

Nodo che contiene la definizione degli elementi del frammento di contenuto. È obbligatorio e deve contenere almeno un nodo secondario per l'elemento Principale , ma può contenere [1.n] nodi secondari.

Quando il modello viene utilizzato, il ramo secondario degli elementi viene copiato nel ramo del modello del frammento.

Il primo elemento (visualizzato in CRXDE Lite) viene automaticamente considerato l’elemento principale ; il nome del nodo è irrilevante e il nodo stesso non ha un significato speciale, a parte il fatto che è rappresentato dalla risorsa principale; gli altri elementi sono gestiti come risorse secondarie.

  • Nome elemento
Nome Tipo Valore
<element-name> nt:unstructured Questo nodo definisce un elemento. È obbligatorio e deve avere un nome univoco.
jcr:title

String

required

Titolo dell’elemento (visualizzato nel selettore di elementi dell’editor di frammenti).
defaultContent

String

facoltativo

impostazione predefinita: ""

Contenuto iniziale dell’elemento; utilizzato solo se precreateElements = true
initialContentType

String

facoltativo

impostazione predefinita: text/html

Tipo di contenuto iniziale dell’elemento; utilizzato solo se precreateElements = true; attualmente supportato:

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

String

required

Nome interno dell’elemento; deve essere univoco per il tipo di frammento.
  • Varianti
Nome Tipo Valore
variations

nt:unstructured

facoltativo

Questo nodo facoltativo contiene la definizione delle variazioni iniziali del frammento di contenuto.
  • Nome variante
Nome Tipo Valore
<variation-name>

nt:unstructured

obbligatorio se è presente un nodo di variante

Definisce una variante iniziale.
Per impostazione predefinita, la variante viene aggiunta a tutti gli elementi del frammento di contenuto.

La variante avrà lo stesso contenuto iniziale del rispettivo elemento (vedere defaultContent/ initialContentType)

jcr:title

String

required

Titolo della variante (visualizzato nella scheda Variazione dell’editor frammento (a sinistra)).
jcr:desciption

String

facoltativo

impostazione predefinita: ""

Testo che fornisce una descrizione della variante (visualizzata nella scheda Variazione dell'editor frammento (a sinistra)).

In questa pagina