El editor de WoowUp utiliza un motor de templates llamado TWIG, esto permite utilizar programación para modificar los templates en base a los datos que tienes disponibles de tus clientes en WoowUp.
Puedes ver más detalle en su documentación Twig for Template Designers
Personalización de asuntos
La personalización de los asuntos en tus correos es crucial para tu estrategia de Email Marketing. Si utilizas esta herramienta mejorarás las tasas de apertura al captar la atención de tu cliente y generarás en él una conexión emocional.
Además, aumenta la relevancia del contenido, reduce la percepción de spam y fomenta la fidelización al mostrar que la marca se preocupa por los intereses de los clientes, lo que en última instancia fortalece la relación y promueve la recompra.
Desde WoowUp podrás personalizar tus asuntos utilizando código TWIG, ¡no debes ser un experto para usarlo! Aquí te indicamos el paso a paso para hacerlo.
Esta configuración la debes hacer desde el campo "asunto" de la configuración de Email:
Muestra un mensaje en función del nombre del cliente
Si necesitas mostrar un asunto personalizado a los clientes que tienen el dato de su nombre y otro asunto a aquellos que no tengan este dato deberás utilizar el siguiente código:
{% if customer.name %}
{{ customer.name | first_word }}, Aquí el mensaje para los que tienen nombre
{% else %}
Aquí el mensaje para los que no tienen nombre
{% endif %}
Esta lógica funcionará así:
Si el cliente tiene un nombre, se muestra su primer nombre seguido de un mensaje específico. Si no tiene nombre, se muestra otro mensaje.
Te explicamos en detalle qué hace cada fragmento de código:
Condición Inicial:
{% if customer.name %}
Comprueba si existe un valor para customer.name. Si es verdad (es decir, si customer.name tiene un valor), se ejecutará el bloque de código dentro de esteif
.
Mensaje para los que tienen nombre:
{{ customer.name | first_word }}, Aquí el mensaje para los que tienen nombre
Si customer.name existe, se mostrará el primer nombre del cliente seguido de un mensaje. La expresión
{{ customer.name | first_word }}
aplica un filtrofirst_word
al valor decustomer.name
, que extrae la primera palabra del nombre del cliente. Luego, se añade el texto "Aquí el mensaje para los que tienen nombre".
Else - Mensaje para los que no tienen nombre:
{% else %}
Aquí el mensaje para los que no tienen nombre
Si
customer.name
no existe (es decir, el cliente no tienen nombre, es nulo, vacío o no está definido), se ejecutará el bloque dentro delelse
, que solo muestra el texto "Aquí el mensaje para los que no tienen nombre".Fin de la condición:
{% endif %}
Marca el final del bloque condicional.
¿Cómo lo verá el cliente?
Condicionales IF/ELSE
Con los condicionales If y else podemos evaluar si un dato tiene un determinado valor y con base a eso mostrar una fila o un contenido en la plantilla.
La sintaxis para usar estos condicionales es la siguiente:
<!--{% if %}--> (Luego del if colocamos el dato a evaluar)
Contenido a mostrar si la condición se cumple.
<!--{% else %}-->
Contenido a mostrar si la condición NO se cumple.
<!--{% endif %}-->
Filtros y funciones
FIltros
Los campos dinámicos pueden modificarse con filtros. Los filtros se aplican utilizando el caracter pipe "|" seguido del filtro a utilizar, por ejemplo:
Campo sin filtros:
{{customer.name}} -> Juan Perez
Campo con filtro para convertir el texto a mayúsculas:
{{customer.name | upper }} -> JUAN PEREZ
Hay filtros que pueden incluir parámetros para configurar como se ha de aplicar el filtro, los parámetros se colocan entre paréntesis y en caso de haber más de uno se separan por comas, por ejemplo:
Campo sin filtros:
{{product.name}} -> Campera de Cuero Ecologico Talle M
Campo con filtros y parámetros para limitar el texto a 20 caracteres
{{product.name | truncate(20) }} -> Campera de Cuero Eco...
Campo con filtros y parámetros para limitar el texto a 20 caracteres y agregar signos de exclamación
{{product.name | truncate(20,'!!') }} -> Campera de Cuero Eco!!
Se pueden utilizar varios filtros en un mismo campo dinámico para aplicar varios efectos simultáneamente, por ejemplo:
Campo con filtros y parámetros para limitar el texto a 20 caracteres, agregar signos de exclamación y convertir el texto a mayúsculas
{{product.name | truncate(20,'!!') | upper }} -> CAMPERA DE CUERO ECO!
Filtros Disponibles
upper | Convierte a mayúscula un texto. |
lower | Convierte a minúscula un texto. |
escape | Escapea un texto en un formato dado. |
raw | Imprime el texto sin escapear en entidades HTML. |
slice | Corta un texto a partir de un inicio y una longitud. |
capitalize | Convierte a mayúscula la primer letra del texto. |
title | Convierte a mayúscula la primer letra de cada palabra del texto. |
trim | Elimina ciertos caracteres al inicio, al final o en ambas posiciones de un texto. |
url_encode | Codifica como URL una cadena de texto. |
replace | Busca un texto y lo reemplaza por otro. |
number_format | Formatea un número con separadores de miles y decimales. |
truncate | Corta un texto a una cierta longitud, si lo corta le agrega por default "..." al final. |
first_word | Corta un texto por los espacios que contengan. Por defecto devuelve la primera palabra del texto. |
Funciones
Las funciones pueden utilizarse para generar contenido, y son invocadas por su nombre seguido por paréntesis "()", pueden contener argumentos de forma opcional.
{{now()}} -> 20/07/2019
{{now(5)}} -> 25/07/2019
Funciones disponibles
now | Retorna la fecha actual con formato dd/mm/yyyy. |
date_format | Formatea una fecha en un cierto formato. |
hex | Convierte a hexadecimal un texto. |
number_format | Formatea un número con separadores de miles y decimales. |
product_by_sku | Busca un producto por SKU. |
best_sellers_by_category | Busca los productos mas vendidos por categoría. |
recommended_products | Busca los productos recomendados para un cliente. |
range | Genera un listado de números a partir de un intervalo. |
chunks | Divide un array en porciones. |