Modelli per frammenti di contenuto

ATTENZIONE

Modelli per frammenti di contenuto sono consigliati per la creazione di tutti i nuovi frammenti di contenuto.

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

NOTA

Prima di AEM 6.3, i frammenti di contenuto venivano creati in base a modelli anziché a modelli.

I modelli per frammenti di contenuto sono diventati obsoleti. Possono ancora essere utilizzati per creare frammenti, ma si consiglia invece di utilizzare Modelli per frammenti di contenuto . Non verranno aggiunte nuove funzioni ai modelli di frammento e verranno rimosse in una versione futura.

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 si trovano in:

  • /libs/settings/dam/cfm/templates

Puoi creare modelli specifici per il sito per frammenti di contenuto in:

  • /apps/settings/dam/cfm/templates
    Posizione per sovrapporre i modelli predefiniti o fornire modelli specifici a livello di applicazione per i clienti che non sono destinati ad essere estesi o modificati in fase di runtime.

  • /conf/global/settings/dam/cfm/templates
    La posizione dei modelli specifici per i clienti a livello di istanza che devono essere modificati in fase di runtime.

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

ATTENZIONE

You deve non modificare nulla nel /libs percorso.

Questo perché il contenuto di /libs viene sovrascritto la prossima volta che aggiorni l’istanza (e potrebbe essere sovrascritto quando applichi un hotfix o un feature pack).

Il metodo consigliato per la configurazione e altre modifiche è:

  1. Ricrea l'elemento richiesto (ovvero così come esiste in /libs) /apps

  2. Apporta modifiche a /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

Maggiori dettagli sui nodi e sulle loro proprietà sono:

  • Modello

    Nome Tipo Valore
    <template-name> nt:unstructured Questo nodo è la radice di ciascun modello. È obbligatorio e deve avere un nome univoco.
    jcr:title

    String

    required

    Il titolo del modello (visualizzato nel Crea frammento procedura guidata).
    jcr:description

    String

    facoltativo

    Un testo che descrive lo scopo del modello (visualizzato nel Crea frammento procedura guidata).
    initialAssociatedContent

    String[]

    facoltativo

    Matrice con percorsi alle raccolte che per impostazione predefinita devono essere associate a un frammento di contenuto appena creato.
    precreateElements

    Boolean

    required

    true, se è necessario creare le risorse secondarie che rappresentano gli elementi (eccetto l’elemento principale) del frammento di contenuto al momento della creazione del frammento di contenuto; false se dovrebbero essere creati "al volo".

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

    version

    Long

    obbligatorio

    Versione della struttura del contenuto; attualmente supportato:

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

  • Elementi

    Nome Tipo Valore
    elements

    nt:unstructured

    obbligatorio

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

    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 come il principale elemento; 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 attività 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

    obbligatorio

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

    String

    facoltativo

    impostazione predefinita: ""

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

    String

    facoltativo

    impostazione predefinita: text/html

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

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

    String

    obbligatorio

    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 varianti 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 (vedi defaultContent/ initialContentType)

    jcr:title

    String

    obbligatorio

    Il titolo della variante (visualizzato nell’editor frammenti) Variazione (barra a sinistra).
    jcr:desciption

    String

    facoltativo

    impostazione predefinita: ""

    Testo che fornisce una descrizione della variante (visualizzato nell’editor frammenti Variazione (barra a sinistra).

In questa pagina