Istruzioni per la preelaborazione

Puoi utilizzare una sintassi specifica nel contenuto della consegna per aggiungere istruzioni e creare uno script per l’URL dell’e-mail tracciata. Le istruzioni <%@ non sono JavaScript: questa sintassi è specifica di Adobe Campaign.

Si applicano solo nel contesto del contenuto di consegna. È l’unico modo per creare uno script per l’URL di un’e-mail e tenerlo tracciato (oltre ai parametri URL). Possono essere visualizzati come una copia/incolla automatica applicata durante l’analisi della consegna prima di rilevare i collegamenti da tracciare.

Sono disponibili tre tipi di istruzioni:

  • include: principalmente per rendere fattoriale un certo codice in opzioni, blocchi di personalizzazione, file esterni o pagine. Ulteriori informazioni
  • value: per consentire l’accesso ai campi della consegna, alle variabili di consegna e agli oggetti personalizzati caricati nella consegna. Ulteriori informazioni
  • foreach: per eseguire il ciclo continuo di una matrice caricata come oggetto personalizzato. Ulteriori informazioni

Possono essere testati direttamente dalla procedura guidata di consegna. Si applicano nell’anteprima del contenuto e quando fai clic sul pulsante di tracciamento per visualizzare l’elenco degli URL.

include

Gli esempi seguenti sono tra i più utilizzati:

  • Incluso il collegamento alla pagina speculare:

    <%@ include view="MirrorPage" %>  
    
  • URL pagina speculare:

    View as a <a href="<%@ include view='MirrorPageUrl' %>" _label="Mirror Page" _type="mirrorPage">web page.
    
  • URL di annullamento della sottoscrizione predefinito:

    <%@ include option='NmsServer_URL' %>/webApp/unsub?id=<%= escapeUrl(recipient.cryptedId)%>
    
  • Altri esempi:

    <%@ include file='http://www.google.com' %>
    <%@ include file='file:///X:/france/service/test.html' %>
    <%@ include option='NmsServer_URL' %>
    

    Utilizza il pulsante di personalizzazione nella procedura guidata di consegna per ottenere la sintassi corretta.

value

Questa istruzione fornisce l’accesso ai parametri della consegna costanti per tutti i destinatari.

Sintassi:

<%@ value object="myObject" xpath="@myField" index="1" %>

Dove:

  • object: nome dell'oggetto (esempio: consegna, fornitore e così via).
    L'oggetto può essere:
    • delivery: per la consegna corrente (vedi dettagli e restrizioni nella sottosezione seguente).
    • provider: per il provider/indirizzamento di consegna corrente (nms:externalAccount).
    • Un oggetto script aggiuntivo: se un oggetto viene caricato nel contesto tramite: Proprietà > Personalizzazione > Aggiungi oggetti nel contesto di esecuzione.
    • Elemento del ciclo foreach: vedi la sezione Foreach di seguito.
  • xpath: xpath del campo.
  • index (facoltativo): se object è un array (per oggetti script aggiuntivi), l'indice dell'elemento nell'array (Starts at 0).

delivery oggetto 

Per la personalizzazione delle e-mail, l’oggetto di consegna è accessibile in due modi:

  • Utilizzando JavaScript:

    <%= delivery.myField %>`.
    

    I campi personalizzati di consegna oggetti JavaScript non sono supportati. Funzionano nell’anteprima, ma non nell’MTA perché l’MTA può accedere solo allo schema di consegna predefinito.

  • Utilizzo di una pre-elaborazione:

    <%@ value object="delivery"
    

Attenzione

Se utilizzi le seguenti istruzioni per le consegne inviate tramite mid-sourcing, il campo personalizzato @myCustomField deve essere aggiunto allo schema nms:delivery sia sulle piattaforme di marketing che di mid-sourcing:

<%@ value object="delivery" xpath="@myCustomField" %>

Per i parametri/variabili di consegna, utilizza la sintassi seguente (utilizzando l’oggetto di consegna):

<%@ value object="delivery" xpath="variables/var[@name='myVar']/@stringValue" %>

value in una sezione Javascript

Per consentire l'uso del valore <%@ nelle sezioni Javascript, due oggetti speciali vengono sostituiti con <% e %>:

<%@ value object='startScript' %>
<%@ value object='endScript' %>

Ad esempio:

<%@ value object='startScript' %> var iMode = <%@ value object="delivery" xpath="@deliveryMode" %> if(iMode == 1) { ... } else { ... }`
`<%@ value object='endScript' %> is expanded in something like <% var iMode = 1 if(iMode == 1) { ... } else { ... } %>.

foreach

Questa istruzione consente l'iterazione su un array di oggetti caricati nella distribuzione per tenere traccia dei singoli collegamenti correlati agli oggetti.

Sintassi:

<%@ foreach object="myObject" xpath="myLink" index="3" item="myItem" %> <%@ end %>

Se:

  • object: il nome dell'oggetto da cui iniziare, in genere un oggetto script aggiuntivo, ma può essere una consegna.
  • xpath (facoltativo): xpath della raccolta su cui eseguire il ciclo continuo. Il valore predefinito è ".", ovvero l'oggetto è l'array su cui eseguire il ciclo continuo.
  • index (facoltativo): se xpath non è "." e object è un array stesso, l'indice item dell'oggetto (inizia da 0).
  • item (facoltativo): nome di un nuovo oggetto accessibile con <> Impostazione predefinita con il nome del collegamento nello schema.

Esempio:

Nelle proprietà di consegna/personalizzazione, caricare un array di articoli e una tabella di relazioni tra il destinatario e gli articoli.

La visualizzazione dei collegamenti a questi articoli può essere effettuata semplicemente con un JavaScript nel modo seguente:

<%
  for(var i=0; i<recipient.rcpArticle.length; i++ )
  {
    %><a href="http://nl.net?a.jsp?article=<%=recipient.rcpArticle[i].article.@id%>">article</a><%
  }
%>

Con questa soluzione, i collegamenti a tutti gli articoli vengono tracciati senza distinzione. Puoi sapere che un destinatario ha fatto clic su un collegamento articolo, ma non sai su quale articolo.

La soluzione è:

  1. Precaricare tutti gli articoli possibili in un array di script aggiuntivo del recapito - articleList[] - il che significa che deve essere presente un numero limitato di articoli possibili.

  2. Scrivere una funzione JavaScript all'inizio del contenuto.

    <%@ value object='startScript' %>
    function displayArticle(articleId)
    {
      <%@ foreach object="articleList" item="article" %>
        if( articleId == <% value object="article" xpath="@id" %> ) 
        {
          <%@ value object='endScript' %>
            <a href="http://nl.net?a.jsp?article=<%@ value object="article" xpath="@id" %>">article</a>
          <%@ value object='startScript' %>
        } 
      <%@ end @%>
    }
    <%@ value object='endScript' %>
    
  3. Visualizzare l'articolo chiamando la funzione.

    <%
    for(var i=0; i<recipient.rcpArticle.length; i++ )
    {
     displayArticle(recipient.rcpArticle[i].article.@id)
    }
    %>
    

In questa pagina

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now