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:
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.
Gli esempi seguenti sono tra i più utilizzati:
Incluso il collegamento alla pagina speculare:
<%@ include view="MirrorPage" %>
URL pagina mirror:
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.
Questa istruzione fornisce l’accesso ai parametri della consegna costanti per tutti i destinatari.
Sintassi:
<%@ value object="myObject" xpath="@myField" index="1" %>
Dove:
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" %>
Per consentire l'utilizzo 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 { ... } %>.
Questa istruzione consente l’iterazione su un array di oggetti caricati nella consegna per tenere traccia dei singoli collegamenti relativi agli oggetti.
Sintassi:
<%@ foreach object="myObject" xpath="myLink" index="3" item="myItem" %> <%@ end %>
Dove:
Esempio:
Nelle proprietà/personalizzazione di consegna, carica un array di articoli e una tabella di relazione tra destinatario e articoli.
La visualizzazione di collegamenti a questi articoli può essere effettuata semplicemente con un JavaScript come segue:
<%
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 a un articolo, ma non puoi sapere su quale articolo.
La soluzione è:
Precaricare tutti gli articoli possibili in un array di script extra della consegna - articleList[] - il che significa che ci deve essere un numero finito di articoli possibili.
Scrivi 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' %>
Visualizza l'articolo chiamando la funzione .
<%
for(var i=0; i<recipient.rcpArticle.length; i++ )
{
displayArticle(recipient.rcpArticle[i].article.@id)
}
%>