In questo articolo vedremo come personalizzare il contenuto dell'email utilizzando le condizioni if
.
Che cosa sono le condizioni if
?
Le condizioni if
costituiscono il linguaggio usato nella funzione Visibilità dei blocchi nell'editor drag & drop. Esso consente di visualizzare o nascondere i blocchi in base ad attributi dei contatti, parametri transazionali o liste dinamiche.
La potente logica offerta dalle condizioni if
ti permette di aggiungere o rimuovere interi blocchi di design all'interno di una campagna email o di un modello, o di modificare del contenuto specifico all'interno di un blocco a seconda delle condizioni che hai impostato. Le condizioni if
sono di due tipi:
- Condizioni
if
elementari che possono essere applicate in modo rapido e semplice a singoli blocchi di design nell'editor drag & drop utilizzando la funzione integrata di Visibilità dei blocchi. - Istruzioni
if
personalizzate che possono essere create e collocate direttamente nel contenuto della tua campagna email o del tuo modello.
L'uso delle condizioni if
estende efficacemente l'utilità di una singola email per più scenari, visualizzando insiemi diversi di contenuti o testo in base a:
- attributi dei contatti definiti nella lista dei contatti
- parametri passati in una chiamata API
Usi comuni delle condizioni if
I modi per usare le condizioni if
per personalizzare il contenuto di un'email sono moltissimi, ma alcuni dei più comuni sono:
- il saluto di apertura dell'email, come Buongiorno Signor Rossi, Buongiorno Signora Bianchi, o semplicemente Buongiorno per i contatti senza dati di genere o nome in archivio
- un'immagine di un prodotto o promozionale, come la promozione di un'immagine di un modello che indossa lo stesso capo d'abbigliamento o la stessa taglia del tuo destinatario, o la visualizzazione dell'articolo in questione nel suo colore preferito
- un messaggio promozionale, come l'inclusione di un'offerta di marketing supplementare nelle tue email transazionali in base agli acquisti effettuati dal cliente o ad altri attributi
Struttura di un'istruzione if
if
a variabili contenenti valori “in virgola mobile” in quanto potrebbero generare risultati non accurati. Esse possono tuttavia essere applicate se il valore viene passato come stringa (racchiusa fra virgolette “come queste”).Regole principali da seguire
Ecco alcune regole da seguire quando si costruisce la propria istruzione if
:
- Un'istruzione if inizia sempre con un tag
if
contenente una condizione:{% if ... %}
- Facoltativamente, l'istruzione
if
può contenere condizioni alternative che saranno valutate in modo sequenziale. Queste condizioni alternative iniziano con:{% elif ... %}
- Sempre su base facoltativa, è possibile aggiungere una clausola onnicomprensiva appena prima della fine dell'istruzione if, come questa:
{% else %}
- Un'istruzione if finisce sempre con:
{% endif %}
Modi comuni per strutturare un'istruzione if
Ci sono molti modi per strutturare un'istruzione if
:
if |
Controlla se un valore è vero o se una matrice non è vuota |
{% if contact.ACTIVE %} --- {% if params.tutors %} {% for tutor in params.tutors %} |
== |
Controlla se un'espressione è vera |
{% if coupon == "BENVENUTO" %} --- {% if contact.DONOR == true %} |
if, in |
Controlla se esiste un valore (sottostringa) in una stringa o se esiste una variabile in una matrice |
{% if "@example.com" in "bob@example.com" %} --- {% if "Piano" in params.types %} |
not |
Controlla se un valore è falso |
{% if not user.subscribed %} |
and / or |
Valuta condizioni multiple |
{% if temperature > 10 and temperature < 55 %} --- {% if contact.LANG == "FR" and contact.COUNTRY == "Canada" %} --- {% if contact.COUNTRY == "Stati Uniti" or contact.COUNTRY == "Canada" %} |
elif, else |
Valuta ramificazioni multiple |
Buongiorno {% if contact.GENDER == "Maschio" %} Sig. {{ contact.LASTNAME }}, --- {% if event.paid %} |
Come vengono elaborate le istruzioni if
La condizione if
è quella che viene inserita fra i tag {% if ... %}
e {% elif ... %}
. Quando elabora l'istruzione if
, il sistema valuta la condizione e:
- se la condizione è soddisfatta, verrà visualizzata la riga successiva, ipotizzando che si tratti di una riga di testo (potrebbe anche essere una riga di codice, dato che puoi usare il nostro linguaggio di creazione di modelli per eseguire un'operazione dall'interno dell'istruzione
if
, nel qual caso verrà eseguita la riga di codice). - se la condizione non è soddisfatta, la riga successiva sarà ignorata e il sistema passerà a valutare la prossima condizione
{% elif ... %}
(se esiste) o a elaborare la clausola onnicomprensiva{% else %}
(anche in questo caso, se esiste). Altrimenti, raggiungerà il tag{% endif %}
e nell'ambito di questa istruzioneif
non succederà nient'altro.
Non appena una condizione viene soddisfatta, il sistema tralascerà qualunque altra condizione {% elif ... %}
o clausola onnicomprensiva {% else %}
rimanente. Questo significa che a volte è necessario pensare all'ordine migliore in cui disporre le condizioni all'interno dell'istruzione if
(altre volte, l'ordine non avrà importanza).
Creazione delle condizioni if
Per adattare un pezzo di testo (detto anche “stringa”) nel caso di un attributo di "Text", puoi usare: {% if contact.GENDER == "Maschio" %}
. Questa condizione farebbe sì che la seguente riga dell'istruzione venga elaborata solo se l'attributo contact.GENDER è uguale a “Maschio”.
Se vuoi che venga valutato se un attributo contiene un valore, deve essere inserito nella condizione solo il nome dell'attributo, senza ulteriore logica. Per esempio, per {% if contact.FIRSTNAME %}
, se ci sono dati memorizzati in contact.FIRSTNAME, verrà elaborata la riga successiva nell'istruzione, mentre se contact.FIRSTNAME è vuoto, la riga successiva verrà saltata.
Questo approccio può essere usato anche nel caso di attributi "booleani". La condizione {% if contact.IS_REGISTERED %}
sarebbe soddisfatta se contact.IS_REGISTERED è un attributo "booleano" impostato su "true", mentre se fosse impostato su "false" o non contenesse alcun valore, la condizione non sarebbe soddisfatta.
Esempi pratici
Ecco alcuni esempi pratici basati sulle istruzioni if
usate più comunemente.
Uso di un'istruzione if
per visualizzare testo supplementare solo per certi contatti
Supponiamo per esempio che la tua lista di contatti includa un attributo "booleano" chiamato "MEMBER" che è impostato su "true" se il contatto ha acquistato un abbonamento. Potresti voler aggiungere un messaggio supplementare per questi contatti. Puoi ottenere questo risultato con la seguente istruzione if
:
{% if contact.MEMBER %}
Grazie per aver rinnovato il tuo abbonamento!
{% endif %}
Visualizzazione di un saluto personalizzato se il nome del contatto è noto, e di un saluto generico in caso contrario
Questo è utile se vuoi includere un saluto come "Gentile {{ contact.FIRSTNAME }}
" nella tua email, ma non hai dati per l'attributo FIRSTNAME per tutti i tuoi contatti.
{% if contact.FIRSTNAME %}
Gentile {{ contact.FIRSTNAME }},
{% else %}
Gentile Cliente,
{% endif %}
Visualizzazione di una formula di cortesia in base al sesso del contatto, e di un saluto generico in caso contrario
Oltre a usare le condizioni if
per verificare se un valore è vero o semplicemente se esiste un valore, puoi anche verificare i valori falsi, o valutare condizioni multiple o rami multipli.
Seguendo l'esempio comune della personalizzazione del saluto di apertura di un'email, potresti voler visualizzare uno dei tre possibili saluti a seconda che l'attributo del contatto per GENDER sia Maschio, Femmina o vuoto. In questo caso, puoi usare i tag {% elif %}
per aggiungere un contenuto alternativo quando il valore di GENDER è Femmina, e {% else %}
per aggiungere un saluto di riserva per qualsiasi altro caso:
Buongiorno {% if contact.GENDER == "Maschio" %} Sig. {{ contact.LASTNAME }},
{% elif contact.GENDER == "Femmina" %} Sig.a {{ contact.LASTNAME }},
{% else %} gentile utente, {% endif %}
⏩ E adesso?
Gli esempi visti si concentrano sulla strutturazione di condizioni if
con gli attributi di contatto, tuttavia puoi anche applicare queste condizioni oltre che agli attributi di contatto, a parametri transazionali e a blocchi ripetibili all'interno dell'editor drag & drop:
- Personalizzazione delle email transazionali
- Come visualizzare o nascondere i blocchi in base ad attributi dei contatti
- Come visualizzare o nascondere i blocchi in base a parametri transazionali
- Come visualizzare o nascondere i blocchi in base a blocchi ripetibili
🤔 Domande?
In caso di domande, non esitare a contattare il team dell’assistenza creando un ticket dal tuo account. Se ancora non hai un account, puoi contattarci qui.
Se stai cercando aiuto per un progetto che prevede l'utilizzo di Brevo, possiamo metterti in contatto con il giusto partner esperto certificato Brevo.