Sto tentando di inviare eventi go google analytics dopo che l'utente è registrato e prima del viene reindirizzato. Sto utilizzando Google Tag Manager e univerasl js.google analytics invia la funzione callback dell'evento
In primo luogo, stavo cercando di usare dataLayer oggetto, come descritto qui: developers.google
Questo è ciò che la mia funzione sembrava:
//Registering new user via ajax
$.ajax('/register/', {
success: function() {
//Pushing event to dataLayer
dataLayer.push({
'Category': 'Registration Process',
'event': 'Registration Submit Btn'
});
//Logging in new user and redirecting the page with a timeout
setTimeout(function(){
loginAction();
}, 500)
}
})
Il guaio è che stavo ricevendo solo circa il 25% di tutti gli eventi, tutti gli altri sono persi. Non so se e quando l'evento verrà effettivamente inviato a Google dopo aver aggiunto l'oggetto a dataLayer e penso che il 75% degli eventi non sia stato inviato affatto.
Ora sto cercando di attuare un altro approccio:
//Registering new user via ajax
$.ajax('/register/', {
success: function() {
//Sending event through ga('send')
parent.ga('send', 'event', 'Registration Process', 'Registration Submit Btn');
//Logging in new user and redirecting the page with a timeout
setTimeout(function(){
loginAction();
}, 500)
}
})
Ma ga ('inviare') non ha ancora alcuna funzione di callback!
Come faccio a essere sicuro che l'evento sia stato effettivamente inviato a google, utilizzando dataLayer o ga ('invia')?
un'occhiata a: http://stackoverflow.com/questions/8147065/google-analytics-async-events-tracking-callback – mdunisch
c'è vecchio inseguitore, Sto usando l'analisi universale, non c'è la funzione _gaq –