Résumé Découvrez comment écrire des liens dans des courriers électroniques pouvant être personnalisés et pris en charge.
Solutions de marketing numérique Adobe Campaign 5.11, 6.0, 6.1, 6.11, 7
Public Utilisateurs avancés, administrateurs

Si vous avez des questions sur cet article ou sur une autre rubrique d’Adobe Campaign, demandez de l’aide à la communauté.

Introduction

Les liens dans le contenu du courrier électronique contenant le besoin de personnalisation syntaxe spécifique à suivre.

L’utilisation de JavaScript dans le courrier électronique (HTML ou texte) permet de générer et d’envoyer du contenu dynamique aux destinataires, incluant deux restrictions :

  • Le script ne pas accéder à la base de données directement (la fonction et les fonctions de L’API SQL ne sont pas disponibles)
  • Adobe Campaign doit pouvoir détecter les URL pour que les liens soient suivis (l’objectif de ce document)

Présentation du processus de personnalisation et de suivi

Pour la détection de suivi, Adobe Campaign incorpore Tidy pour analyser la source html et détecter les éléments récurrents.. Il répertorie toutes les URL du contenu de sorte qu’elles puissent être suivies individuellement. Adobe Campaign utilise Tidy pour remplacer l’URL (http://myurl.com) par une URL pointant vers le serveur de redirection.de Adobe Campaign.

Par exemple, dans le contenu initial : http://myurl.com/a.php?name=<%=escapeUrl(recipient.lastName)%> est remplacé pour un destinataire spécifique par : http://emailing.customer.com/r/?id=h617791,71ffa3,71ffa8&p1=Bare

Où :

  • « h » signifie contenu HTML (ou « t » pour le contenu à texte).
  • 617791 est l’identifiant de message/de broadLog (hexadécimal).
  • 71ffa3 est l’identifiant de NmsDelivery (hexadécimal).
  • 71ffa8 est l’identifiant de NmsTrackingUrl (hexadécimal).
  • p1, p2, etc., correspondent tous les paramètres à substituer dans l’URL.

Détection des URL de suivi

Exemple de non-detection.

<%= getURL("http://mynewsletter.com") %> travaille et envoie le contenu réel de la page Web par courrier électronique aux destinataires. Mais aucun des liens n’est suivi. La raison en est que le MTA exécute «<%=getURL(...» pour chaque message avant l’envoi. Il peut être différent pour chaque destinataire. Par conséquent, Adobe Campaign ne peut pas connaître les URL du suivi et les affecter à un identifiant de balise.

Lorsque la page à télécharger est identique pour tous les destinataires, la meilleure pratique consiste à effectuer les opérations suivantes :

<%@ include url="http://mynewsletter.com" %>

Dans ce cas, la page est téléchargée lors de l’analyse, avant la détection de suivi. Il permet à Adobe Campaign de détecter les liens, d’attribuer un identifiant de balise et de les suivre.

Motif recommandé

Après le traitement <%@des instructions l’URL a suivi la syntaxe suivante :

<a href="http://myurl.com/a.php?param1=aaa&param2=<%=escapeUrl(recipient.xxx)%>&param3=<%=escapeUrl(recipient.xxx)%>">

Avertissements sur http://<%=myURL%>motif

La syntaxe <a href="http://<%=myURL%>"> n’est pas recommandée car :

  • Les Tidy peuvent corriger incorrectement certains liens, ce qui peut se produire de manière aléatoire. Le symptôme standard est une partie du code HTML visible dans les épreuves électroniques, mais pas dans l’aperçu.
  • L’absence de l’URL est problématique, certains caractères de l’URL peuvent provoquer des problèmes.
  • Vous ne pouvez pas avoir un paramètre nommé identifianten conflit avec le paramètre dans l’URL de redirection.
  • L’intérêt du suivi est alors limité aux statistiques de la diffusion, comme Adobe Campaign suit de manière indifférente toutes les valeurs possibles de « myURL ».

<%@ instructions qui apparaissent à l’écran

Ces instructions de pré-traitement ne sont pas JavaScript, cette syntaxe est spécifique à Adobe Campaign.

Ils s’appliquent uniquement au contenu de contenu de diffusion Il s’agit du seul moyen de scripter l’URL d’un courrier électronique et de faire en sorte qu’elle soit suivie (paramètres URL). Ils peuvent être affichés comme une copie/collage automatique lors de l’analyse de la diffusion avant de détecter les liens à suivre.

Il existe trois types d’instructions :

  • « inclure » : principalement factoriser des options de code, blocs, fichiers externes ou pages de personnalisation
  • « valeur » : pour accorder l’accès à des champs de diffusion, variables de diffusion et objets personnalisés chargés dans la diffusion
  • « foreach » pour boucler un tableau chargé comme objet personnalisé.

Ils peuvent être testés directement à partir de l’assistant de diffusion. Ils s’appliquent dans l’aperçu du contenu et lorsque vous cliquez sur le bouton de suivi pour afficher la liste des URL.

<%@ include

Les exemples suivants sont les plus utilisés :

  • Notamment le lien de page mirror : <%@ include view="MirrorPage" %>
  • URL de la page miroir : "View as a <a href="<%@ include view='MirrorPageUrl' %>" _label="Mirror Page" _type="mirrorPage">web page"
  • URL de désabonnement de dialogue :<%@ include option='NmsServer_URL' %>/webApp/unsub?id=<%= escapeUrl(recipient.cryptedId)%>
  • Autres exemples :
    • <%@ include file='http://www.google.com' %>
    • <%@ include file='file:///X:/france/service/test.html' %>
    • <%@ include option='NmsServer_URL' %>

Utilisez le bouton de personnalisation de l’assistant de diffusion pour obtenir la syntaxe correcte.

 

<%@ valeur

Cette instruction donne accès aux paramètres de la diffusion qui sont constants pour tous les destinataires.

Syntaxe:

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

Où :

  • « objet » nom de l’objet (exemple : diffusion, fournisseur, etc.).
  • « xpath » : xpath du champ.
  • « index » (facultatif) : si l'« objet » est un tableau (pour les objets de script supplémentaires), index d’élément dans le tableau (commence à 0).

L’objet peut être :

  • « Diffusion » : pour la diffusion en cours (voir détails et restrictions dans les sous-sections ci-dessous).
  • « fournisseur » : pour le fournisseur de diffusion/routage actuel (nms:externalAccount).
  • Une objet de script supplémentaire : si un objet est chargé dans le contexte par Propriétés > Personalisation > dans le contexte d’exécution.
  • Élément de la boucle foreach : voir la section Foreach ci-dessous.

Objet « Diffusion »

Pour la personnalisation par courrier électronique, l’objet de diffusion est accessible de deux manières :

  • Dans JavaScript. Par exemple : <%= delivery.myField %>. Les champs personnalisés de la diffusion d’objet JavaScript ne sont pas pris en charge. Ils fonctionnent dans l’aperçu, mais pas dans le MTA car le destinataire peut accéder au schéma de diffusion clé en main.
  • A travers le pré-traitement <%@ value object="delivery"

Pour l’instruction <%@ value object="delivery" xpath="@myCustomField" %> une autre limitation de diffusion est envoyée via mid-sourcing. Le champ personnalisé @myCustomField doit être ajouté au schéma nms:de diffusion sur les plates-formes marketing et mid-sourcing.

Remarque : pour les paramètres/variables de diffusion, utilisez la syntaxe suivante (à l’aide de l’objet de diffusion) :

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

valeur de <%@ dans une section JavaScript

Pour permettre l’utilisation de <%@ value dans les sections du script deux objets spéciaux sont remplacés par < % et % > :

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

Par exemple :

<%@ 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

Cette instruction permet l’itération sur un tableau d’objets chargés dans la diffusion pour suivre les liens individuels liés aux objets.

Syntaxe:

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

Où :

  • « object » : nom de l’objet à partir duquel commencer, généralement un objet de script supplémentaire, mais peut être une diffusion.
  • « xpath » (facultatif) : xpath de la collection à lire en boucle. La valeur par défaut est « . » ce qui signifie que l’objet est le tableau à lire en boucle.
  • « index » (facultatif) : si xpath n’est pas « . » et l’objet est une gamme lui-même, index d’article d’objet (commence à 0).
  • « article » (facultatif) : nom d’un nouvel objet accessible avec la valeur <%@ dans la boucle foreach. Valeur par défaut avec le nom du lien dans le schéma.

Exemple :

Dans les propriétés de diffusion/personnalisation, chargez un tableau d’articles et un tableau de relations entre les destinataires et les articles.

L’affichage des liens vers ces articles peut être effectué à l’aide d’un JavaScript comme suit :

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

Avec cette solution, les liens vers tous les articles sont suivis sans distinction. Vous pouvez savoir qu’un destinataire a cliqué sur un lien d’article, mais vous ne pouvez pas savoir quel article.

La solution consiste à :

  1. Pré-chargez tous les articles possibles dans un tableau de script supplémentaire de la diffusion - articleList[] - ce qui signifie qu’il doit exister un nombre fini d’articles possibles.
  2. Rédigez une fonction JavaScript au début du contenu.
<%@ 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. Afficher l’élément en appelant la fonction.

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

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne