Saltar al contenido

Función de devolución de llamada de evento de envío de Google Analytics

Nuestro equipo de redactores ha pasado horas investigando para darle solución a tus dudas, te brindamos la respuestas así que nuestro objetivo es servirte de mucha ayuda.

Solución:

Finalmente lo tengo. Es bastante complicado y no se describe en los documentos. En mi caso, uso el Administrador de etiquetas de Google, por lo que tuve que hacer algunas soluciones para activar con éxito un evento y recibir una devolución de llamada.

Primero, tenemos que obtener ClientId, que se requiere con cualquier evento enviado a los servidores de Google. En realidad, se guarda en cookies, pero Google no recomienda tomarlo directamente de allí.

Así es como Google recomienda obtenerlo, pero esto no trabajará si está utilizando el Administrador de etiquetas de Google.

 ga(function(tracker) 
       var clientId = tracker.get('clientId');
 );

En su lugar, debe obtener ClientId del método getAll.

 var clientId = ga.getAll()[0].get('clientId');

Después, tienes que crear un nuevo rastreador.

    ga('create', 'UA-XXX-YYY', 
        'clientId': clientId
    );

Y después de eso podemos enviar un evento:

 ga('send', 'event', 
   'eventCategory': 'YOUR Category Name', //required
   'eventAction': 'YOUR Action name', //required
   'eventLabel': 'YOUR Label',
   'eventValue': 1,
   'hitCallback': function() 
       console.log('Sent!!');
      //callback function
    ,
   'hitCallbackFail' : function () 
      console.log("Unable to send Google Analytics data");
      //callback function
   
);

Del documento de Google Analytic https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#hitCallbackNews

// Alerts the user when a hit is sent.
ga('send', 'pageview', 
  'hitCallback': function() 
    alert('hit sent');
  
);

Puedes editar el hitCallback función para el tuyo.

O

// Use a timeout to ensure the execution of critical application code.
ga('send', 'pageview', 'hitCallback': criticalCode);
setTimeout(criticalCode, 2000);

// Only run the critical code once.
var alreadyCalled = false;
function criticalCode() 
  if (alreadyCalled) return;
  alreadyCalled = true;

  // Run critical code here...

Aquí puede definir su función (criticalCode) en el ejemplo anterior que puede garantizar los datos enviados a Google Analytic y luego trabajar con su código.

Para comprender mejor la API de Analytics, fyr: https://developers.google.com/analytics/devguides/collection/analyticsjs/command-queue-reference

De los documentos: https://developers.google.com/analytics/devguides/collection/analyticsjs/advanced#hitCallback

ga('send', 'pageview', 
  'page': '/my-new-page',
  'hitCallback': function() 
  alert('analytics.js done sending data');

);

En este ejemplo, el objeto de nombre de campo configura tanto el parámetro de página como la configuración de hitCallback. Una vez que el rastreador haya completado el envío de datos, se mostrará un cuadro de alerta al usuario.

Puede usar hitCallback para eventos, vistas de página, etc.

Aquí tienes las comentarios y valoraciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *