Jun 29 2008

HelpSemaforoQuesto semaforo indica il livello difficoltà del post
semaforo verde - articolo per tutti semaforo giallo - articolo avanzato semaforo rosso - articolo per esperti

Tracciare automaticamente link e download: the italian way

autore: categoria: javascript

Quando vi proposi la libreria di Brian Clifton per tracciare automaticamente link e download, dissi che soffriva di un problema. A molti sembrerà un problema di poco conto, una cosa che usano in pochissimi, ma ha realmente una sua utilità che vado a spiegarvi: la libreria di Clifton funziona solo con l’oggetto predefinito di GA, pageTracker. Se voi istanziate più oggetti per più profili, non va. Dovete modificare il sorgente e conoscere a priori il nome dell’oggetto di monitoraggio. Insieme a Francesco Terenzani (lui l’autore materiale del codice, io ci ho messo alcune idee e test) ci siamo subito messi a pensare a una soluzione più snella ed efficace per colmare questa lacuna, e l’abbiamo trovata e descritta nel post di Francesco.

Le istruzioni sono molto chiare e non ve le riporto (e tra l’altro non c’è nemmeno bisogno di una chiamata onload), vorrei invece porre l’accento ancora una volta sulla flessibilità della soluzione che abbiamo trovato. Possiamo istanziare due o più oggetti di tracciamento e tracciare gli stessi download su due o più account diversi, oppure possiamo tracciare cose diverse su account diversi come mostrato da Francesco. Invece di fare dei filtri a monte di profili-copia, con una semplice riga nel GATC otteniamo lo stesso risultato.

Guardate questo codice (realmente testato):


<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript" src="_ftTrack.js"></script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-XXXXX-5");
pageTracker._initData();
pageTracker._trackPageview();
_ftTrack(pageTracker, "link|doc|rtf|pdf|zip");

var miopersonalTracker = _gat._getTracker("UA-XXXXX-12");
miopersonalTracker._initData();
_ftTrack(miopersonalTracker, "doc|rtf");
</script>

se notate, al secondo oggetto di tracciamento manca la chiamata a trackpageview(), che è quella che trasmette i dati ai server di Analytics. Questo perché trackpageview viene richiamata già al momento della creazione delle pagine virtuali, cui viene passato come argomento il percorso delle pagine virtuali stesse. Con il codice che ho scritto sopra avremo due profili, magari copie, il primo dei quali traccia tutto come sempre con in più i link esterni, i documenti doc, rtf e pdf e gli archivi zip, mentre il secondo traccia SOLO i documenti doc e rtf. ma avendo escluso la chiamata ordinaria di trackpageview, questo oggetto non traccia tutte le altre pagine, la home page ad esempio. Traccia SOLO i documenti, così possiamo fare analisi segmentata già dall’origine (ad esempio, gli arrivi da motore di ricerca ci indicheranno quali sono i documenti meglio indicizzati e per quali keyword).
Ecco un esempio di bacheca nel profilo copia di cui ho parlato:

sezione di bacheca

Condividi l'articolo:

39 Commenti

  1. ottimo, ci voleva un modo semplice per attivare questa importante funzione di GA

  2. Complimenti a tutti e due! 🙂

  3. Ciao, scusa ma non riesco a capire se è possibile, con questa interessantissima funzione, tracciare anche i link sul mailto…

  4. no, al momento no. E’ la feature che manca, ma è facilissimo implementarla, mentre non è così facile per lo script di Clifton diventare multi-account 😉

  5. Ottima proposta 🙂
    In effetti questo tipo di segmentazione per siti che offrono molte risorse è veramente comodo.

    Buona continuazione (mi sa che ci riserverai molte cose interessanti).

  6. @Fello, se non sbaglio per controllare il mail:to è sufficiente inserire una funzione on click sul link html. O meglio, io faccio così, sbaglio Marco?

  7. no, ma devi farlo a mano. Con lo script di Clifton (e direi la prossima versione del nostro) lo farebbe automaticamente 🙂

  8. Ciao a tutti,
    ho installato lo script e devo dire che traccia anche i link sul mailto, me li ritrovo nel pannello Contenuto-> contenuti principali

    con questa forma: /OUTGOINGmailto:pippopippo@libero.it

    P.S. perchè non mi arrivano più le notifiche quando qualcuno risponde?

  9. quella direi essere una conseguenza del diverso dominio dell’email. Scommetto che su email con lo stesso dominio dove è ospitato lo script non funzionerebbe. Diciamo che io parlavo di un comportamento controllato e progettato, magari tracciabile sotto /EMAIL/

    quali notifiche?

  10. Ciao Marco e grazie della consuetà disponibilità…

    In effetti ho testato lo script con una e-mail di un dominio diverso da quello che ospitava le pagine, progettare questo script anche per tracciare il click sulle email a mio parere sarebbe MOLTO utile.

    Sbaglio o inizialmente mi arrivava una e-mail quando qualcuno rispondeva sul blog?

  11. Non ho previsto quella opzione, almeno non consapevolmente con un plugin o un segno di spunta nel pannello di admin 🙂

  12. grazie ragazzi ottima idea

  13. buongiorno, ho applicato il vostro metodo con ottimi risultati, grazie!
    ora pero’ una curiosità.. vorrei applicare un “advanced segment” per visualizzare i soli download..
    ho provato in due modi:
    -filtrare /MEDIA/ con \/MEDIA\/ (ma secondo me qui manca qualcosa)
    -singolarmente i vari tipi di file con \.(pdf)$

    in entrambi i casi in effetti il numero pagine cala drasticamente.. ma oltre le pagine corrette vengono mantenute anche altre n pagine.. che nulla hanno a che fare con il filtro appena creato.. riuscite a darmi una mano ?

    grazie

  14. Il procedimento è corretto. Che altro tipo di pagine vengono incluse nel segmento?

  15. Ciao!
    Grazie innanzitutto per le preziose chicche e aiuti =)
    abbiamo inserito il codice in questione ma ho un problema, sicuramente banale..
    dove trovo nel pannello la lista dei file di cui è stato fatto download??? non li trovo all’interno dei ciontenuti principali… =(

  16. li trovi sia nei contenuti principali sia nel report “dettaglio contenuto”, come se fossero nella sottocartella /DOWNLOAD/

  17. Ora vedo in effetti una cartella /OUTGOING/ farò qualche altra prova per vedere se effettivamente traccia i singoli documenti..
    Grazie mille intanto!

  18. Ciao a tutti,
    io continuo a non trovare su “dettaglio contenuto” la lista dei miei files scaricabili.
    Ho messo il pdf sulla root, forse lo devo mettere sotto una cartella?
    Grazie

  19. il pdf può stare dove vuole, purché sia linkato in qualche pagina. Inoltre lo vedrai nei files SCARICATI se e solo se qualcuno lo scarica almeno una volta nel periodo temporale selezionato.

  20. Ciao Marco,

    il pdf è linkato nell’homepage del mio sito: http://www.ilcasaledimario.com.
    L’Ho scaricato io, quindi dovrebbe risultare la lista dei files scaricati. La trovo dentro ‘dettaglio contenuto’ sotto la lista di tutte le altre pagine del sito?
    Grazie, Emma

  21. rispetto a quanto scritto nel 2009, la versione in uso attualmente dello script di Francesco traccia tutto con gli EVENTI. quindi il report da guardare è CONTENTUI -> EVENTI. Nel tuo caso specifico categoria “Media click”, azione “donwload”, etichetta “brochure.pdf”.

  22. Ok grazie, tutto nella ‘nuova versione’ di Google Analytics.
    Sai se è possibile avere dati dettagliati riguardo agli eventi? Ad esempio la provenienza, il browser ecc. per ogni click? Grazie

  23. certo, basta usare la dimensione secondaria.

  24. E’ troppo chiederti a questo punto come si usa?
    Ancora grazie.

  25. guardando il report degli eventi, sopra l’elenco delle righe del report c’è scritto “dimensione secondaria…” premi e selezioni “sorgenti di traffico -> sorgente” (o un’altra dimensione). Le righe si dividono in due colonne, e per ogni evento hai la sorgente, o l’altra dimensione che hai scelto

  26. Ciao Marco, che tu sappia esiste un modo per tracciare i click su di un’animazione flash (senza mettere mano ai sorgenti del flash)? Grazie

  27. senza mettere mano al flash credo proprio di no…

  28. Ciao, è possibile vedere quante visite mando dal mio sito ad un altro linkato?

    Ho un banner in homepage, posso sapere in quanti lo cliccano dalle funzioni standard di analytics?

  29. e potendo mettere mano al fla cosa mi consigli di usare? Grazie

  30. sicuramente l’API apposita http://code.google.com/p/gaforflash/

  31. Alex, lo script di cui si parla in questo post provvede a tracciare anche i click sui link esterni, se vuoi. quindi si, puoi sapere quanti cliccano e dove vanno.

  32. grazie Marco per il consiglio!

  33. Ciao a tutti e compimenti per questa ottima dritta.
    Ho fatto tutto come da voi suggerito ed anche in modo molto semplice. Però su “Eventi” in analytics non trovo alcun risultato, mentre mi traccia tutti i vari risultati tipo pagine, paesi etc etc…
    Il codice che ho inserito prima della chiusura dell’Head è:

    var _gaq = _gaq || [];
    _gaq.push([‘_setAccount’, ‘UA-34953282-1’]);
    _gaq.push([‘_trackPageview’]);

    (function() {
    var ga = document.createElement(‘script’); ga.type = ‘text/javascript’; ga.async = true;
    ga.src = (‘https:’ == document.location.protocol ? ‘https://ssl’ : ‘http://www’) + ‘.google-analytics.com/ga.js’;
    var s = document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(ga, s);
    })();

    _gaq.push(function(){
    _ftTrack(_gat._getTrackerByName(), “link|email|7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|phps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip”);
    });

    Il sito è fatto in joomla (magari il problema è questo)… se qualcuno di voi ha già avuto modo di risolvere questo problema, gliene sarei grato, ciao e grazie !!!

  34. l’a capo c’è anche nel tuo codice? e il file .js è stato correttamente referenziato?

  35. Ciao Marco,
    sembra essere tutto corretto perchè in una pagina di test, il codice funziona. A questo punto il mio problema sarà il gestore dei download in Zoo Joomla in quanto non punta a dei file zip (sono tutti zip) ma linka ad una stringa del genere:

    http://www.miodominio.com/protezioni-modulari/protezioni-macap/profili-e-cornici-20.raw?task=callelement&item_id=716&element=d8553f81-48dd-40e3-a51b-be9405f5c9e4&method=download

    Hai per caso avuto questa esigenza per una eventuale soluzione?
    Grazie per la tua attenzione
    Giovanni

  36. questa specifica no, ma è evidente che non funziona proprio perché non linki un file “reale”.

  37. ciao
    io di analytics ne mastico poco, sai darmi una dritta?
    uso Joomla ho collegato la vostra libreria e messo il vostro script,
    Domande
    dove vedo i risultati dei download in google analytics?
    devo attivare un obiettivo?
    Come lo definisco?
    grazie per la disponibilità

  38. nel repot contenuti -> eventi
    non è necessario configurare un obiettivo, è una tua scelta

  39. Ciao Marco,

    nella pagina download ho letto che lo script è ormai obsoleto.
    Qualche alternativa?

    Complimenti e grazie dell’attenzione,
    Alessio

Scrivi un Commento