Sfruttare i frammenti nei criteri di decisione fragments

In questa pagina: sfrutta i frammenti di contenuto di Journey Optimizer e i frammenti di contenuto di AEM nei criteri decisionali, in modo da poter personalizzare e ottimizzare le decisioni sui contenuti per i diversi canali.

Gli elementi decisionali supportano due tipi di contenuto di frammenti che possono essere utilizzati durante l’authoring dei messaggi all’interno di un criterio decisionale:

Frammenti di contenuto Journey Optimizer ajo-fragments

Se i criteri di decisione contengono elementi di decisione, compresi frammenti di contenuto di AJO, puoi sfruttarli durante l’authoring di un messaggio all’interno dei criteri di decisione in tutti i canali in cui è disponibile Decisioning (esperienza basata su codice, e-mail, push, SMS e percorsi).

Ad esempio, supponiamo che tu voglia visualizzare contenuti diversi per diversi modelli di dispositivi mobili. Aggiungi i frammenti specificati, ciascuno relativo a un modello di telefono diverso, all’elemento decisionale utilizzato nel criterio decisionale. Scopri come aggiungere frammenti a un elemento decisionale.

Sezione Frammenti di un elemento di decisione che mostra i riferimenti ai frammenti e le chiavi di posizionamento. {width="70%"}

Al termine, puoi utilizzare uno dei seguenti metodi:

Inserisci direttamente il codice

È sufficiente copiare e incollare il blocco di codice riportato di seguito nel codice del criterio di decisione. Sostituisci variable con l’ID frammento e placement con la chiave di riferimento frammento:

code language-handlebars
{% let variable =  get(item._experience.decisioning.offeritem.contentReferencesMap, "placement").id %}
{{fragment id = variable required=false}}
Segui i passaggi dettagliati
  1. Passare alle Funzioni helper e aggiungere la funzione Let {% let variable = expression %} {{variable}} al riquadro del codice, in cui è possibile dichiarare la variabile per il frammento.

    Editor di codice dei criteri di decisione che mostra la funzione di supporto Let aggiunta al riquadro del codice.

  2. Utilizza la Mappa > Ottieni funzione {%= get(map, string) %} per generare la tua espressione. La mappa è il frammento a cui si fa riferimento nell’elemento decisionale. La stringa può essere il modello di dispositivo immesso nell’elemento di decisione come chiave di riferimento frammento.

    Funzioni Map e Get utilizzate per fare riferimento alla mappa frammento e alla chiave di riferimento frammento.

  3. Puoi anche utilizzare un attributo contestuale che contenga questo ID modello dispositivo.

    Attributo contestuale selezionato per l'identificatore del modello di dispositivo.

  4. Aggiungi la variabile scelta per il frammento come ID frammento.

    Variabile ID frammento impostata dall'elemento decisione nel codice dei criteri di decisione.

L’ID frammento e la chiave di riferimento verranno selezionati dalla sezione Frammenti dell’elemento di decisione.

WARNING
Se la chiave del frammento non è corretta o se il contenuto del frammento non è valido, il rendering potrebbe non riuscire e causare un errore nella chiamata di Edge.
Per evitare errori quando un frammento non è temporaneamente disponibile, viene utilizzato il flag required=false in modo che il frammento venga ignorato. Ulteriori informazioni sui frammenti temporaneamente non disponibili

Utilizzo e guardrail fragments-guardrails

I seguenti guardrail si applicano in modo specifico a Frammenti di contenuto di AJO utilizzati negli elementi decisionali.

Simulare frammenti di contenuto ed espressione nelle e-mail
Per il canale E-mail, i frammenti di espressione associati a un elemento di decisione vengono visualizzati correttamente quando Invia bozza o quando la campagna viene attivata. Tuttavia, Simula contenuto non visualizza il frammento di espressione dall’elemento di decisione.
Frammenti visivi ed elementi decisionali nelle e-mail
Impossibile assegnare un frammento visivo a un elemento decisione. In questo contesto sono supportati solo frammenti espressione.
Elemento decisionale e attributi di contesto

Gli attributi degli elementi decisionali e gli attributi contestuali non sono supportati per impostazione predefinita nei frammenti Journey Optimizer. Tuttavia, puoi utilizzare in alternativa le variabili globali, come descritto di seguito.

Supponiamo che desideri utilizzare la variabile sport nel frammento.

  1. Fai riferimento a questa variabile nel frammento, ad esempio:

    code language-text
    Elevate your practice with new {{sport}} gear!
    
  2. Definisci la variabile con la funzione Let all’interno del blocco dei criteri di decisione. Nell’esempio seguente, sport è definito con l’attributo elemento decisione:

    code language-handlebars
    {#each decisionPolicy.13e1d23d-b8a7-4f71-a32e-d833c51361e0.items as |item|}}
    {% let sport = item._cjmstage.value %}
    {{fragment id = get(item._experience.decisioning.offeritem.contentReferencesMap, "placement1").id }}
    {{/each}}
    
Convalida del contenuto del frammento di elemento decisione
  • A causa della natura dinamica di questi frammenti, quando vengono utilizzati in una campagna, la convalida dei messaggi durante la creazione del contenuto della campagna viene ignorata per i frammenti a cui si fa riferimento negli elementi decisionali.

  • La convalida del contenuto del frammento viene eseguita solo durante la creazione e la pubblicazione del frammento.

  • Per i frammenti di espressione di tipo JSON, il contenuto viene convalidato sintatticamente al momento del salvataggio del frammento. Gli errori di convalida vengono visualizzati come avvisi.

In fase di esecuzione, viene convalidato il contenuto della campagna (incluso il contenuto del frammento dagli elementi decisionali). In caso di errore di convalida, la campagna non verrà rappresentata.

I frammenti temporaneamente non disponibili sono stati ignorati {#temporary-unavailable-fragments}

Quando percorsi o campagne fanno riferimento a frammenti allegati a elementi decisionali, possono verificarsi brevi ritardi di sincronizzazione prima che i frammenti aggiornati siano disponibili su Edge.

Per evitare errori quando un frammento non è temporaneamente disponibile, per impostazione predefinita i frammenti hanno ora il flag required impostato su false e vengono quindi saltati invece di causare un errore nel percorso o nella campagna.

Ciò significa che se il frammento non è temporaneamente disponibile in Edge, viene semplicemente ignorato. Se il frammento è disponibile, viene riprodotto normalmente.

Esempio

Se il criterio decisionale è valido per due offerte e ciascuna di esse contiene un frammento, ad esempio “20% di sconto” e “30% di sconto”, e il secondo frammento non è temporaneamente disponibile, con required=false il percorso esegue il rendering dell’offerta disponibile (20% di sconto) e ignora l’altro frammento (30% di sconto) invece di generare un errore nel sistema o nella campagna. Ciò migliora l’affidabilità quando il contenuto è ancora sincronizzato.

NOTE
È comunque possibile contrassegnare un frammento come obbligatorio impostando il flag required su true. Tuttavia, se manca temporaneamente un frammento, potrebbe verificarsi un errore nel rendering del percorso o della campagna.

Frammenti di contenuto di AEM aem-fragments-decisioning

AVAILABILITY
Questa funzione è disponibile per i canali con supporto per Decisioning.

Prima di sfruttare i frammenti di contenuto di AEM in un criterio decisionale, assicurati di disporre di:

Nell’editor di personalizzazione sono disponibili tutti i Frammenti di contenuto di AEM associati agli elementi decisionali selezionati dal criterio. Viene visualizzata una cartella per nome chiave di frammento.

➡️ Scopri come utilizzare AEM Content Fragments con Journey Optimizer Decisioning nel video

In questo esempio, il criterio di decisione include due elementi di decisione a cui sono associati frammenti di AEM tramite il nome di riferimento.

Editor Personalization che mostra i frammenti di contenuto di AEM disponibili per nome chiave di frammento in un criterio di decisione.

  1. Fai clic sul pulsante + per aggiungere il frammento desiderato all’espressione.

    Poiché un singolo nome di riferimento può avere più frammenti associati a esso tra diversi articoli di offerta, Decisioning determina quello migliore da consegnare a ciascun cliente in base ai criteri di classificazione dei criteri di decisione.

  2. Una volta selezionato il frammento, puoi sfruttarne gli attributi, ad esempio URL di immagini, campi di testo o altro contenuto, e utilizzare Decisioning per presentare al cliente giusto il contenuto al momento giusto.

    Attributi selezionati dei frammenti di contenuto di AEM disponibili per la personalizzazione nell'espressione dei criteri di decisione.

  3. Prima di attivare la campagna o il percorso, utilizza uno di questi metodi di simulazione per visualizzare in anteprima come verranno visualizzati i valori dei campi Frammento di contenuto di AEM. Ulteriori informazioni sulla simulazione del contenuto

Utilizzare i frammenti di contenuto di AEM nei diversi canali aem-fragments-channels

La modalità di inserimento degli attributi dei frammenti di contenuto di AEM da un criterio decisionale dipende dal canale in cui stai lavorando.

E-mail

Per inserire gli attributi dei frammenti di contenuto di AEM nell’e-mail utilizzando un criterio di decisione:

  1. Apri la bozza dell’e-mail in E-mail Designer e fai clic sull’icona Decisioning nella barra a destra per aprire il pannello dei criteri di decisione.

  2. Seleziona la strategia di selezione assemblata e specifica un posizionamento per definire l’area dell’e-mail in cui verrà popolata l’offerta.

  3. Fai clic sull’icona + e seleziona il campo specifico dal frammento di contenuto di AEM che deve essere riprodotto in quell’area, ad esempio il campo URL dell’immagine principale.

    Invia un messaggio e-mail al pannello dei criteri di decisione di Designer con un campo Frammento di contenuto di AEM selezionato per un posizionamento.

  4. Prima di pubblicare, fai clic su Simula contenuto per visualizzare in anteprima il risultato e verificare che l’offerta con priorità più alta e il relativo frammento di contenuto eseguano il rendering come previsto per un profilo di test.

Esperienza basata su codice (JSON)

Quando crei un’esperienza basata su codice JSON, utilizza la seguente struttura per eseguire il rendering degli attributi dei frammenti di contenuto di AEM da un criterio decisionale.

code language-handlebars
[
{{#each decisionPolicy.YOUR_POLICY_ID.items as |item|}}
{% let frag = get(item._experience.decisioning.offeritem.aemContentReferencesMap, "YOUR_REFERENCE_KEY").id %}
{{fragment id = frag result='YOUR_REFERENCE_KEY' required=false}}
{
  "fieldName": "{{{YOUR_REFERENCE_KEY.fieldName}}}"
},
{{/each}}
]
note
NOTE
I frammenti di contenuto di AEM utilizzano aemContentReferencesMap per cercare i frammenti in base alla chiave di riferimento. È diverso da contentReferencesMap, utilizzato per i frammenti di contenuto di Journey Optimizer.

Quando crei il payload JSON, tieni presente quanto segue:

  • Posizionare le parentesi dell’array JSON [ e ] all’esterno del ciclo #each.
  • Utilizza parentesi graffe {{{ }}} per i valori dei campi all’interno delle stringhe JSON per evitare che HTML sfugga ai caratteri speciali e garantire un output JSON valido.
  • Il parametro result='YOUR_REFERENCE_KEY' acquisisce il contenuto del frammento risolto con quel nome in modo da poter fare riferimento ai relativi campi con YOUR_REFERENCE_KEY.fieldName.

Editor esperienza basato su codice che mostra gli attributi dei frammenti di contenuto di AEM sottoposti a rendering da un criterio di decisione in JSON.

Esperienza basata su codice (HTML)

Per esperienze basate su codice basate su HTML, utilizza le doppie parentesi graffe standard per il rendering dei campi:

code language-handlebars
{{#each decisionPolicy.YOUR_POLICY_ID.items as |item|}}
{% let frag = get(item._experience.decisioning.offeritem.aemContentReferencesMap, "YOUR_REFERENCE_KEY").id %}
{{fragment id = frag result='YOUR_REFERENCE_KEY' required=false}}
<div>{{YOUR_REFERENCE_KEY.fieldName}}</div>
{{/each}}

Utilizzare le risorse dai frammenti di contenuto di AEM aem-cf-assets

I frammenti di contenuto di AEM possono includere campi immagine che fanno riferimento a risorse memorizzate in AEM. Poiché Journey Optimizer riceve solo il percorso relativo di tali risorse, è possibile che le immagini non vengano caricate a meno che l’URL di pubblicazione completo non sia preceduto.

NOTE
La risoluzione nativa dei riferimenti alle risorse AEM all’interno dei frammenti di contenuto non è ancora supportata. Gli approcci riportati di seguito sono soluzioni alternative disponibili fino all’aggiunta di tale supporto.
Anteponi il dominio di pubblicazione AEM
  1. Dall’URL dell’istanza di AEM, identificare il dominio di authoring, ad esempio author-p12345-e67890.adobeaemcloud.com.

    URL dell'istanza di AEM che mostra il dominio di authoring utilizzato per derivare il dominio di pubblicazione.

  2. Sostituire author con publish per ottenere il dominio di pubblicazione: publish-p12345-e67890.adobeaemcloud.com.

  3. Nell’editor di personalizzazione di Journey Optimizer, aggiungi il dominio di pubblicazione al campo di riferimento della risorsa dal frammento di contenuto.

    L'editor di Personalization con il dominio di pubblicazione di AEM è stato aggiunto a un campo di riferimento per le risorse di un frammento di contenuto.

Al momento della consegna, l’immagine verrà risolta nel relativo URL di pubblicazione completo.

Archivia l'URL di pubblicazione in un campo di testo
  1. Apri il frammento di contenuto in AEM.

  2. Vai all’anteprima JSON e controlla la sezione Riferimenti per individuare l’URL della risorsa pubblicata.

    Sezione dei riferimenti di anteprima JSON per frammenti di contenuto di AEM che mostra l'URL della risorsa pubblicata.

  3. Copia l’URL di pubblicazione e incollalo in un campo di testo dedicato all’interno del Frammento di contenuto.

    Campo di testo Frammento di contenuto AEM contenente l'URL di pubblicazione copiato per la risorsa di riferimento.

  4. In Journey Optimizer, fai riferimento a tale campo di testo direttamente come origine dell’immagine nell’espressione di personalizzazione.

    Espressione di personalizzazione Journey Optimizer che fa riferimento al campo di testo Frammento di contenuto come origine dell'immagine.

Questo approccio evita la costruzione manuale degli URL e mantiene l’URL di pubblicazione all’interno del frammento di contenuto stesso.

Video introduttivo video

Scopri come utilizzare Frammenti di contenuto di Adobe Experience Manager con Journey Optimizer Decisioning per personalizzare e ottimizzare i contenuti.

recommendation-more-help
journey-optimizer-help