
Warning: preg_match(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 1385
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 1385
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Warning: preg_match_all(): Compilation failed: invalid range in character class at offset 4 in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 690
Warning: Invalid argument supplied for foreach() in /home/customer/www/fabiopiccigallo.com/public_html/wp-content/plugins/smart-image-loader/simple_html_dom.php on line 697
Nelle scorse puntate del nostro corso su Google Tag Manager abbiamo fatto conoscenza con il tag di Analytics per il tracciamento delle pageviews e abbiamo parlato diffusamente delle diverse tipologie di trigger, o attivatori.
Oggi proveremo a chiudere il cerchio occupandoci delle variabili, allo scopo di cercare insieme di capire meglio come funzionano, quali tipologie fondamentali è utile usare e quali problemi possono risolvere.
Se hai qualche nozione base di informatica allora sai cosa è una variabile, nei termini più generali. Si tratta - per così dire (e mi perdonino gli informatici) - di un cassettino di memoria, di un luogo virtuale dove è possibile immagazzinare delle informazioni allo scopo di riutilizzarle in seguito.
In Google Tag Manager, una variabile è più o meno la stessa cosa: si tratta di un valore che viene richiesto a un certo punto della vita del nostro tracciamento e che può essere reperito all'interno di Google Tag Manager stesso, del DOM o del data Layer, e richiamato quando serve per i nostri scopi.
Costanti
In realtà, nel corso di questa guida abbiamo già iniziato ad operare con le variabili, fin dalla prima puntata.
Già allora, infatti, suggerivo di impostare una variabile con un valore costante allo scopo di memorizzare una volta per tutte in Google Tag Manager il nostro Analytics Tracking Id (UA-XXXXXX-X) associandogli un nome, che poi potremo utilizzare tutte le volte che impostiamo un tag di Analytics:

Il tipo costante è ovviamente la variabile più semplice a disposizione in Google Tag Manager.
Lo cito solamente per richiamare la tua attenzione sulla doppia parentesi graffa che precede e segue il nome della nostra variabile. Questo è infatti il modo convenzionale con cui GTM ci impone di richiamare le nostre variabili, che avranno quindi sempre un riferimento tra due coppie di parentesi graffe.
Dove? Non dappertutto, naturalmente. Le caselle dove è possibile inserire una variabile sono infatti contrassegnate dal piccolo pezzo Lego con un più disegnato sopra, come quello che abbiamo visto nell'immagine precedente. Altrove (ad esempio nel nome che identifica un trigger o un tag) non è possibile fare riferimento a variabili.
Le variabili integrate
Oltre alle costanti, tra le variabili che useremo di più ci sono sicuramente alcune delle variabili integrate di Google Tag Manager.
Le variabili di questo tipo sono molte, e appartengono a sei diverse famiglie:
- Pagine
- Utilità
- Errori
- Clic
- Moduli
- Cronologia.
Difficilmente le useremo tutte: proprio per questo, Tag Manager ci dà la possibilità di selezionare solamente quelle che ci servono davvero per sviluppare il nostro progetto, escludendo tutte le altre:

Soffermiamoci solo sulle più importanti, per capire in dettaglio quali valori restituiscono quando le invochiamo.
Per tutte le altre, ti rimando alla guida Google.
Variabili delle pagine
Page URL
Restituisce la URL completa della pagina in cui siamo.
Quando dico completa, intendo dire: dal protocollo ai parametri. La variabile può essere quindi facilmente utilizzata, assieme a una stringa regex di confronto, per determinare la presenza di un parametro specifico (ad esempio un parametro UTM) o per acquisirne il valore.
Page Hostname
Restituisce solo il nome host della pagina (ad esempio: www.fabiopiccigallo.com), senza protocollo e senza percorso e parametri.
Page Path
Altra utilissima variabile, restituisce stavolta il percorso della nostra URL, senza protocollo, nome host e parametri (/analytics/qualcosa/).
Utilità
Event
Restituisce una stringa contente il valore contenuto nella chiave 'event' del nostro dataLayer

Random Number
Utile quando dobbiamo "tirare la monetina", ogni volta che viene invocata questa variabile assume un valore sempre differente tra 0 e 2.147.483.647.
Clic e Moduli
Clic e moduli (o forms) condividono la stessa struttura e la stessa logica di variabili integrate. Li trattiamo quindi insieme.
Click Element
È la variabile che ci restituisce l'elemento su cui si è cliccato, e che ha generato un evento automatico. Il riferimento è tratto anche questa volta dal data Layer, e nello specifico dalla chiave gtm.element.
Nel caso di un click su un <div class="miclasse" id="mioId">Qualcosa</div> corrisponderà all'oggetto HTMLDivElement.

Click classes
Corrisponde alla classe (se esiste) dell'elemento che ha generato il click.
Nel dataLayer, corrisponde in pratica alla chiave gtm.elementClasses.

Nel nostro caso di div: <div class="miclasse" id="mioId">Qualcosa</div> corrisponderà alla stringa "miaclasse".
Click ID
Corrisponde all'Id (se esiste) dell'elemento che ha generato il click.
Nel dataLayer, lo troviamo in relazione alla chiave gtm.elementId.
Nel nostro caso <div class="miclasse" id="mioId">Qualcosa</div> corrisponderà alla stringa "mioId".
Click URL
Corrisponde alla URL di destinazione di un attributo href o di un attributo di tipo action (presente ad esempio nei form).

Il link può essere anche di tipo anchor.
Nel caso di un link del tipo <a href="www.miosito.it" target="_blank">mio link</a> corrisponderà alla stringa "www.miosito.it".
Click target
Corrisponde al valore contenuto nell'attributo target dell'oggetto che ha generato l'auto-evento (ad esempio, _blank, o new).
Click Text
Nel nostro esempio, corrisponderà alla stringa "mio link". Corrisponde al valore contenuto nell'attributo innerText dell'elemento HTML che ha generato l'auto-evento.
Continua...
In modalità Anteprima, tutte queste variabili sono reperibili, in corrispondenza di ogni auto-evento, nella scheda Variabili della nostra preview:

Nella prossima puntata ci occuperemo dell'altra grande famiglia di variabili: le variabili personalizzate.
Non mancare, mi raccomando!