Scripts de correo electrónico

Lea la Guía del usuario de Velocity para obtener una explicación detallada del comportamiento del idioma de plantilla de Velocity.

Apache Velocity es un lenguaje basado en Java para crear plantillas y scripts de contenido de HTML. Utilice Velocity en los tokens de scripts de correo electrónico de Marketo para acceder a los datos almacenados en oportunidades y objetos personalizados y crear contenido de correo electrónico dinámico.

Velocity proporciona los flujos de control if/else, for y foreach para el contenido condicional e iterativo.

Variables

Prefijo de variables con $. Créelos o actualícelos con #set:

#set($variable = "value")

Recupere valores de variables con tipos de referencia que proporcionen comportamientos diferentes:

$variable ##outputs 'value'
$variablename ##outputs '$variablename'
${variable}name ##outputs 'valuename'

La notación de referencia silenciosa incluye ! después de $. De forma predeterminada, Velocity deja la cadena de referencia en su lugar cuando una referencia no está definida. Una referencia silenciosa no emite ningún valor cuando no está definida:

##Defined Reference

#set($foo = "bar")
$foo ##outputs "bar"

##Undefined Reference

##normal
$baz ##outputs "$baz"

##quiet
$!baz ##outputs nothing

Para obtener más información sobre cómo hacer referencia a variables, consulte la Guía del usuario de Apache.

Herramientas de Velocity

El proyecto Apache Velocity proporciona Herramientas de Velocity. Estos contenedores exponen los métodos de objeto Java a través de variables globales disponibles para todos los scripts.

Por ejemplo, para usar un método de ComparisonDateTool, acceda a él desde la variable $date en un token de script:

#set($birthday = $convert.parseDate("2015-08-07","yyyy-MM-dd"))
##use whenIs to determine how many days away it is
$date.whenIs($birthday).days ##outputs 1

Creación de un token de script

Añadir scripts de Velocity a los correos electrónicos con tokens de script de correo electrónico. Cree un token en Actividades de marketing dentro de una carpeta o programa de marketing.

Para utilizar un token, el correo electrónico debe ser un elemento secundario del programa que posee el token o heredarlo de una carpeta de marketing. Vaya a una carpeta o programa y seleccione la ficha Mis tokens. Arrastre la opción Script de correo electrónico desde el menú derecho a la lista de tokens.

Token de script

Edite el nombre del token y, a continuación, seleccione Haga clic para editar para abrir el editor:

Editar script

En el editor, cree una secuencia de comandos que acceda a variables en objetos accesibles por secuencias de comandos. Para añadir una referencia de campo de objeto, arrástrela desde el árbol derecho al script:

Editar token de script

Incrustación y prueba de scripts

Después de definir la secuencia de comandos en el programa My Token, haga referencia a él desde un correo electrónico en el editor de correo electrónico de Marketo.

Script de correo electrónico

Pruebe el script con la acción Enviar correo electrónico de muestra en el diseñador de correo electrónico de Marketo. Seleccione un posible cliente existente en el campo Posible cliente para que el script se procese correctamente.

Al probar $TriggerObject, seleccione el objeto desencadenante con el parámetro Déclencheur. Marketo usa el objeto actualizado más recientemente de ese tipo como la variable $TriggerObject.

Probar script de correo electrónico

También puede probar con Vista previa del correo electrónico. Seleccione Ver como: Detalle del posible cliente y, a continuación, seleccione un posible cliente de una lista estática. La vista previa también muestra excepciones de la ejecución de scripts:

Ver Correo Electrónico Como

Mejores prácticas

La longitud combinada de todos los tokens de script de correo electrónico de un correo electrónico determinado no puede superar los 100 000 bytes. Este límite pertenece a la longitud total de las propias cadenas de token (no a la longitud total después de que se hayan expandido los tokens).

  • Las variables a las que se hace referencia en el script de correo electrónico deben existir en Marketo en uno de los objetos disponibles para el script.
  • Puede hacer referencia a objetos personalizados de primer y segundo nivel que se originan en su CRM integrado de forma nativa y que están conectados directamente al cliente potencial o contacto, pero no a objetos personalizados de tercer nivel. Los objetos personalizados no pueden ser elementos primarios del posible cliente o de la compañía
  • Para los objetos personalizados de Marketo, puede hacer referencia a objetos personalizados de segundo nivel con relación principal-secundario. Por ejemplo Lead <- Parent <- Child. No se puede hacer referencia a objetos personalizados de segundo nivel con la relación Edge-Bridge. por ejemplo, Lead <- Bridge -> Edge
  • Puede hacer referencia a objetos personalizados conectados a un posible cliente, contacto o cuenta, pero no a más de uno.
  • Solo se puede hacer referencia a los objetos personalizados a través de una única conexión, posible cliente, contacto o cuenta
  • Marque la casilla en el editor de scripts para los campos que está utilizando o que no se procesan
  • Para cada objeto personalizado, los diez registros actualizados más recientemente por persona/contacto están disponibles durante la ejecución. Los registros se ordenan desde la última actualización en el índice 0 hasta la más antigua en el índice 9. Puede aumentar el número de registros disponibles en siguiendo las instrucciones.
  • Si incluye más de un script de correo electrónico en un correo electrónico, se ejecutan de arriba a abajo. El ámbito de las variables definidas en el primer script que se va a ejecutar está disponible en los scripts posteriores.
  • Referencia de herramientas: https://velocity.apache.org/tools/2.0/index.html
  • Una nota relativa a los tokens que contienen los caracteres de línea nueva “\n” o “\r\n”. Cuando se envía un correo electrónico mediante Enviar muestra o una campaña por lotes, los caracteres de línea nueva de los tokens se sustituyen por espacios. Cuando se envía un correo electrónico a través de la campaña de Déclencheur, los caracteres de línea nueva no se tocan.
  • Para garantizar el análisis correcto de la dirección URL, establezca la ruta completa como variable y, a continuación, imprímala. No imprima variables dentro de referencias de URL. Incluya el protocolo (http:// o https://) por separado del resto de la dirección URL. Mostrar una etiqueta de anclaje completa (<a>) para poder realizar el seguimiento de los vínculos. No se realiza el seguimiento de los vínculos de salida de un bucle for o foreach.
<!-- Correct -->
#set($url = "www.example.com/${object.id}")
<a href="http://${url}">Link Text</a>

<!-- Correct -->
<a href="http://www.example.com/${object.id}">Link Text</a>

<!-- Incorrect -->
<a href="${url}">Link Text</a>

<!-- Incorrect -->
<a href="{{my.link}}">Link Text</a>

<!-- Incorrect -->
<a href="http://{{my.link}}">Link Text</a>
recommendation-more-help
marketo-developer-help