I blocchi condizionali consentono ai tuoi design di avere parti di contenuto che vengono omesse oppure mostrate a tutti i destinatari. Solo alcuni destinatari che soddisfano una certa condizione visualizzeranno quella parte di messaggio.
Dove utilizzarli
Puoi utilizzare i blocchi condizionali su Splio in 5 situazioni:
- Design HTML
- Design SMS
- Oggetto dell’email
- Il nome del mittente
- Template
Blocchi condizionali - nozioni di base con esempi
Blocchi condizionali con operatore =
Blocchi condizionali con operatore !=
Blocchi condizionali che utilizzano operatori di confronto
Blocchi condizionali che utilizzano LIKE e NOT LIKE
Blocchi condizionali basati su un filtro
Elenco di tutti gli operatori
Suggerimenti e best practice
Scorciatoie
Splio ha previsto delle scorciatoie a strutture già pronte per i blocchi condizionali più comunemente usati. Per trovarli, vai all'editor di design email, ad esempio cliccando sul pulsante “Nuova email” (1) e poi selezionando la scheda “Editor HTML” (2).
Utilizza il pulsante “Funzioni” (3) e seleziona “Blocchi condizionali” (4) dal menu “Strumenti” sulla destra.
Clicca sul blocco condizionale di tuo interesse e conferma con il pulsante “Seleziona”. La sintassi condizionale verrà inserita direttamente nel tuo codice.
Inserire i blocchi condizionale tramite Message Builder
Esistono due modi per inserire i blocchi condizionali in fase di creazione del design tramite Message Builder:
- Inserendo uno o più blocchi di testo con sintassi inclusa (opzione preferibile solo se hai testo da visualizzare nel blocco)
- Inserendo un blocco HTML con sintassi inclusa (opzione preferibile se desideri configurare la dimensione e il rapporto d'aspetto [ratio] di un'immagine in un blocco o loop)
Inserimento del blocco in un unico blocco di testo (la freccia rossa indica dove trovare il menu Funzioni con le sintassi predefinite)
Esempio di un blocco condizionale utilizzato in blocchi diversi
Blocchi condizionali - nozioni di base con esempi
I blocchi condizionali sono costituiti da una o più condizioni contenute tra le formule {SPLIO IF}
e SPLIO ENDIF}
. La seconda e la successiva condizione devono essere introdotte dalla formula {SPLIO ELSEIF}
.
Le condizioni vengono sempre valutate nell'ordine in cui sono scritte. Non appena una condizione viene soddisfatta, il contenuto tra essa e la successiva {SPLIO . . . }
diventa parte del messaggio attuale, mentre tutte le altre condizioni nel blocco vengono ignorate.
Il contenuto tra le formule {SPLIO ELSE}
e {SPLIO ENDIF}
viene inserito per impostazione predefinita quando non viene soddisfatta alcuna condizione.
Il processo è meglio illustrato negli esempi seguenti. Tutti gli esempi sono suddivisi in più righe per agevolare la lettura. Tuttavia, potresti dover scrivere alcuni blocchi condizionali in un’unica riga, ad es. per l’oggetto dell’email.
Blocchi condizionali con operatore =
Affronteremo i blocchi condizionali con esempi che utilizzano l’operatore “uguale a”. Puoi utilizzarlo per includere contenuto specifico se, e solo se, un valore è pari al valore nella condizione.
{SPLIO IF $gender$ = "male"}
Dear Mr.
{SPLIO ELSE}
Dear Ms.
{SPLIO ENDIF}
Se il campo $gender$ per il contatto corrente contiene il valore “uomo”, scrivi “Gent.mo Sig.” e il cognome del contatto. Altrimenti non fare nulla. Spiegazione:
{SPLIO IF $gender$ = "male"}
Dear Mr.
{SPLIO ELSEIF $gender$ = "female"}
Dear Ms.
{SPLIO ENDIF}
Spiegazione:
- Se il campo $gender$ per il contatto corrente contiene il valore “uomo”, scrivi “Gent.mo Sig.” e il cognome del contatto, quindi prosegui dopo ENDIF.
- Se invece il valore del campo $gender$ è “donna”, scrivi “Gent.ma Sig.ra” e il suo cognome.
{SPLIO IF $gender$ = "male"}
Dear Mr.
{SPLIO ELSEIF $gender$ = "female"}
Dear Mr.
{SPLIO ELSE}
Dear Client
{SPLIO ENDIF}
Spiegazione:
- Se il campo $gender$ per il contatto corrente è equivalente a “uomo”, scrivi “Gent.mo Sig.” e il cognome del contatto, quindi prosegui dopo ENDIF.
- Se il campo $gender$ per il contatto corrente è equivalente a “donna”, scrivi “Gent.ma Sig.ra” e il cognome del contatto, quindi prosegui dopo ENDIF.
- Se il campo $gender$ contiene qualcos’altro, scrivi “Gentile Cliente,”.
Blocchi condizionali con operatore !=
L’operatore “non uguale a” è il contrario del precedente. Le condizioni che utilizzano “!=” vengono sempre soddisfatte, tranne quando il campo contiene il valore specificato.
{SPLIO IF $firstname$ != ""}
$firstname$, an incredible offer for you!
{SPLIO ELSE}
Dear client, an incredible offer for you!
{SPLIO ENDIF}
Spiegazione:
- Splio controlla il campo $firstname$ per il contatto corrente. Se il campo non è vuoto, Splio scrive il nome del contatto e le parole “un’offerta imperdibile per te!”
- Altrimenti, Splio scrive “Gentile Cliente, un’offerta imperdibile per te!”
Blocchi condizionali che utilizzano operatori di confronto
Gli operatori – ">" (maggiore di), ">=" (maggiore o uguale), "<" (minore di), "<=" (minore o uguale) – vengono utilizzati principalmente con i numeri. Per esempio, consentono di includere contenuti diversi per contatti di età o gruppi di spesa diversi.
{SPLIO IF $age$ >= "60"}
[include a special content for seniors]
{SPLIO ELSE}
[include a special content for yuonger]
{SPLIO ENDIF}
Spiegazione:
- Se il valore del campo $age$ per il contatto corrente è 60 o maggiore, scrivi un invito alla linea cosmetica per over 60.
- Altrimenti, scrivi un invito a una linea di cosmetici per la cura quotidiana.
Blocchi condizionali che utilizzano LIKE e NOT LIKE
Con questi operatori è possibile controllare se un campo contiene (o non contiene) una stringa di caratteri.
In questo modo, se hai un campo contenente i prodotti preferiti per ogni contatto nel tuo database, puoi verificare se un prodotto specifico è presente in questa lista con LIKE
oppure assente, con NOT LIKE
).
{SPLIO IF $email$ LIKE "%gmail%"}
[Content for Gmail]
{SPLIO ELSE}
[Generic content]
{SPLIO ENDIF}
Spiegazione:
- Splio controlla se il campo $email$ per il contatto corrente contiene la stringa di caratteri “gmail”.
- In tal caso, viene utilizzato il contenuto ottimizzato per questo provider di posta elettronica.
- Altrimenti il contenuto generico è incluso nel messaggio.
Blocchi condizionali basati su un filtro
Se nel database sono presenti segmenti (filtri o gruppi) che dividono i clienti in gruppi, ad esempio in base ai livelli del programma loyalty oppure ai dettagli d'acquisto, è possibile includere contenuti speciali indirizzati ai contatti di ciascun segmento utilizzando la parola chiave IN SEGMENT.
La parola chiave IN SEGMENT deve essere seguita dall'id numerico di un filtro o gruppo di contatti. Non è possibile utilizzare filtri vendita o loyalty perché contengono dati di identificazione utenti diversi e, pertanto, non corrisponderanno mai all'indirizzo email utilizzato per l’invio. L'immagine sottostante mostra dove puoi trovare l'ID nell'elenco dei filtri.
L'esempio seguente presuppone che tu abbia questi 3 segmenti:
- ID = 22 con contatti dei membri VIP del tuo programma loyalty,
- ID = 26 con membri (non VIP) di questo programma,
- ID = 16 con contatti che sono potenziali membri del programma (prospect)
{SPLIO IF IN SEGMENT 22}
[include a special offer for VIP customer]
{SPLIO ELSEIF IN SEGMENT 26}
[include a special offer for regular customer]
{SPLIO ELSEIF IN SEGMENT 16}
[include a special offer for prospects]
{SPLIO ELSE}
[include anything else]
{SPLIO ENDIF}
Spiegazione:
- Se il contatto corrente è presente nel segmento 22 (per ID segmento), includi il contenuto VIP, quindi vai a ENDIF.
- Se il contatto corrente è presente nel segmento 26, includi il contenuto per i membri non VIP, quindi passa a ENDIF.
- Se il contatto corrente è presente nel segmento 16, includi il contenuto per i prospect, quindi passa a ENDIF.
- Se sei qui, significa che nessuna delle condizioni di cui sopra è stata soddisfatta. Non fare nulla.
- Continua a produrre il messaggio secondo il blocco condizionale.
Elenco di tutti gli operatori
Puoi trovare tutti gli operatori utilizzabili per creare relazioni tra le variabili (ad es. valori di campo) e i valori in questa tabella:
OPERATORI | DESCRIZIONE | ESEMPIO |
= |
Uguale a |
$gender$ = “uomo” |
!= |
Diverso da |
$status$ != “inattivo” |
> |
Maggiore di (valori numerici o date) |
$age$ > 18 |
< |
Minore di (valori numerici o date) |
$age$ < 50 |
>= |
Maggiore o uguale |
$age$ > = 35 |
<= |
Minore o uguale |
$age$ > = 24 |
LIKE "%value%" |
Contiene |
$cellphone$ LIKE "%+33%” |
NOT LIKE "%value%" |
Non contiene |
NOT LIKE "@" |
LIKE deve essere utilizzato con il simbolo% (prima, dopo, entrambi) + il valore |
Suggerimenti e best practice
Queste non sono regole, ma seguirle ti aiuterà a evitare errori o semplicemente a rendere i tuoi design più semplici da leggere e analizzare.
- Separa sempre gli operatori con uno spazio vuoto ($var1$ > $var2$, non $var1$>$var 2$)
- Non è possibile aggiungere blocchi condizionali passando attraverso l'editor WYSIWYG su Splio. Devi farlo direttamente nel file HTML, utilizzare l'editor del codice HTML o Message Builder.
- I blocchi condizionali iniziano sempre con un'istruzione {SPLIO IF} e terminano con {SPLIO ENDIF}.
- Non è possibile inserire un blocco condizionale all'interno di un altro (questo è chiamato annidamento). È necessario invece utilizzare la sintassi {SPLIO IF} . . . {SPLIO ELSEIF} . . . {SPLIO ELSE} . . . {SPLIO ENDIF}.
Per i blocchi condizionali pronti all'uso, vai alla sezione Introduzione e tutorial > Blocchi e loop pronti all'uso > blocchi condizionali