Dec 19 2011

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo rosso - articolo per esperti

Automatizzare il passaggio tra domini

autore: Marco Cilia categoria: javascript tag: , , ,

Ogni volta che ho a che fare con il passaggio dei visitatori tracciati da un dominio all’altro è un dramma: è un dramma spiegare ai clienti perché bisogna farlo (ma di solito la frase risolutiva è “ma allora perché il vostro sito non legge le informazioni nei cookie di gmail e facebook? 🙂 ), è quasi sempre un dramma implementarlo se non posso farlo direttamente, perché i tempi di reazione sono allungati. Comunque sia, come tutti voi dovreste ormai sapere, ogni dominio imposta un differente set di cookie, ed è il motivo per cui esiste la funzione _setAllowLinker e le relative _link e _linkByPost, con cui bisogna taggare TUTTI i link che inviano i visitatori all’altro – o agli altri – siti.

Lunametrics ha aggiornato un suo vecchio script per automatizzare la cosa alla sintassi asincrona:

Le istruzioni dicono di assicurarsi che siano presenti la _setDomainName impostata sul dominio di secondo livello nel quale è lo script di Analytics e la _setAllowLinker, condizioni di partenza necessarie, poi di scaricare e modificare lo script inserendo nella riga 5 i domini possibile sui quali si potranno inviare i visitatori, ed eventualmente nella riga 6 le estensioni dei file di cui si vuole tracciare i download.
Poi bisogna caricare il file nei domini e aggiungere una riga in cui si richiama il file; poiché il sistema è basato su jQuery è necessario un riferimento alla libreria, se già non l’avete (vanno bene anche le versioni basilari offerte su CDN, tipo google, microsoft, eccetera).

A quel punto ogni link che punta ad uno dei domini interessati conterrà la funzione _link e _linkByPost, e il processo sarà completamente automatizzato. Un po’ come accadeva con setXDomain su GAaddons, che però è stata dismessa dall’autore


Jun 09 2010

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo giallo - articolo avanzato

Vuoi capire meglio le regular expression?

autore: Marco Cilia categoria: generale tag: ,

Usando Google Analytics prima o poi tutti si trovano ad avere a che fare con le regular expression, c’è poco da fare. Che sia la configurazione di un obiettivo, la creazione di un filtro o di una regola per filtrare le colonne di un report, la sola parola “regular expression” è in grado di far scappare molte persone a gambe levate.

Eppure ricorrendo ad una buona dose di buon senso si riesce spesso ad averne ragione, perché tipicamente le espressioni che servono alle persone sono abbastanza semplici; per i casi più complessi esistono i consulenti mica per nulla 🙂

Robbin Steif di Lunametrics ha messo insieme un grazioso ebook intitolato proprio “regular expressions for Google Analytics“, che dovrebbe togliere almeno i dubbi principali a chi si accinge – o non ha mai compreso fino in fondo il funzionamento – a creare regex nello strumento di Google.
Non ho finito di leggerlo tutto, ma mi sembra che la lettura scorra fluida e i concetti siano chiari. L’unica pecca è che è scritto in inglese, e questo potrebbe creare un ulteriore livello di difficoltà in alcune persone.

L’ebook è scaricabile gratuitamente dal sito di Lunametrics oppure è consultabile direttamente online, tramite un lettore in Flash.

Già che ci siamo voglio inserire in questo post altre risorse che nel tempo mi sono trovato a consigliare quando mi hanno chiesto lumi in merito: nella mia libreria ci sono “Espressioni Regolari” di Marco Beri – livello facile – e “Mastering Regular Expression” della O’Reilly – livello tremendamente complicato.
Per fare le prove (fate SEMPRE le prove, mi raccomando!) uso Regex Designer


Aug 18 2009

Copiare interamente un profilo

autore: Marco Cilia categoria: javascript tag: , , , ,

Clone troopers by adactioIn passato ho parlato spesso dei cosiddetti “profili-copia” o “profili-clone”, ovvero profili di Google Analytics che si basano sugli stessi dati in ingresso del profilo di cui sono copie (quindi non c’è bisogno di incollare un altro codice di monitoraggio) ma cui si possono applicare filtri differenti, goal differenti, accessi differenti.
Si è detto che anche con l’introduzione delle più recenti funzionalità quali i segmenti avanzati esistono ugualmente buone ragioni per usare i profili copia.

Purtroppo l’interfaccia di Google Analytics in questo frangente è piuttosto deficitaria, e molte persone non capiscono bene come clonare un profilo. Per farlo bisogna andare dentro all’account che contiene il profilo da copiare e premere “Aggiungi nuovo profilo”, esattamente come si farebbe per un nuovo sito. A questo punto la prima selezione si trova su “Aggiungi un profilo per un nuovo dominio”, invece noi dobbiamo spostarla su “Aggiungi un profilo per un dominio esistente“. Fatto questo apparirà un menu a tendina con l’elenco dei profili già esistenti per quell’account, dal quale selezionare il profilo da clonare.
Le parole nuovo dominio e dominio esistente sono fuorvianti per la maggior parte delle persone, ma non si riferiscono ovviamente all’effettiva registrazione del dominio presso gli enti preposti. Significano più banalmente “aggiungi un nuovo profilo” e “copia un profilo esistente”. Anzi, la formula che propongo è ugualmente errata, perché va sempre tenuto presente che i profili-clone non copiano i dati già processati, ma iniziano a riceverli dal momento della creazione.

Clonare un profilo, però, lo rende vergine rispetto a tutte le impostazioni che sono state fatte sull’originale. Quindi i settaggi andrebbero reimpostati manualmente, i filtri riassegnati uno ad uno e i goal ricreati, sempre ammesso che si voglia avere gli stessi filtri e gli stessi goal. Ma non è difficile immaginare uno scenario simile: avete un profilo esistente, con alcuni filtri avanzati e 4 goal. Stringete un accordo con un partner per alcuni link di riferimento, con pagamento in base al raggiungimento dei 4 goal. Quel che vi serve per dargli l’accesso alle statistiche è un profilo-clone completamente identico al principale con in più un filtro sul referrer, in modo che il partner veda solo ed esclusivamente i dati dei visitatori che ha inviato lui.

Invece di copiare a mano tutte le impostazioni, ROI Revolution ha prodotto uno script GreaseMonkey in grado di copiare le impostazioni e i goal da un profilo ad un altro (anche se i link puntano a pagine diverse, lo script è unico ed è indifferente da dove lo scaricate). In questo modo con pochi click avrete una copia perfetta del profilo, cui potrete facilmente aggiungere o cambiare alcune cose senza dover rifare tutto daccapo. Mancano i goal, ma a quello ha pensato Lunametrics, con una intera estensione per Firefox e relativa toolbar.

Con questi tre strumenti (anche se fisicamente sono due) sarete in grado di replicare interamente un profilo in pochi secondi, e avrete così modo di fare esperimenti senza paura di rovinare dati, potrete dare accessi differenziati alle statistiche o potrete fare analisi più approfondite su alcuni segmenti di visitatori.

[photo credit: adactio on Flickr]


Apr 30 2009

Lo zombie initData a volte disturba

autore: Marco Cilia categoria: codice di monitoraggio tag: , ,

Matt Cutts zombieCome vi ho detto qualche tempo fa, nei nuovi codici di monitoraggio che copiaincollate da Google Analytics è sparita la riga relativa a initData(), funzione soppressa dagli ingegneri di Google e chiamata implicitamente ed automaticamente dallo script. Se non avete provveduto a modificare i vostri codici di tracciamento (GATC) avete, appunto, uno zombie in casa: una funzione morta che cammina ancora tra le vostre pagine 🙂

Non fa male, di per sé, tranne per il caso citato oggi da Lunametrics, ovvero se avete alcune pagine con initData e alcune pagine senza; ad esempio perché avete aggiunto delle pagine nuove e avete copiato il codice dal pannello di Analytics invece che da una vostra pagina vecchia. In questo caso i cookie di GA possono essere scritti in forme leggermente differenti, e questo è fonte di errori e perdita del tracciamento del percorso del visitatore, quindi è male.
E’ un problema che nemmeno i controlli automatici come SitescanGA possono individuare, per cui è vostra cura assicurarvi di avere un GATC coerente su tutte le pagine.

Ricapitolando quindi le due regole fondamentali:

  • non possono coesistere chiamate a urchin.js e ga.js nella stessa pagina; possono coesistere nello stesso sito, ma è sconsigliato. Se possibile usate solo ga.js
  • se avete codici che contengono la chiamata a initData() dovrete scegliere se rimuoverla da tutte le pagine in cui è presente o aggiungerla in tutte le pagine in cui è assente