• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

279
Vistas
Google analytics.js movido a un archivo js externo funciona, pero gtag.js no

Durante años he tenido el fragmento de Google Universal Analytics en un archivo js externo. Por supuesto, tuvo que ser convertido para usarlo allí. Ahora intento hacer lo mismo con el fragmento de código más nuevo de Google Analytics 4 (gtag). Hasta el momento, la recopilación de datos en Google Analytics no está ocurriendo. Primero probé el fragmento en el encabezado, y funciona de esa manera.

Aquí está el fragmento proporcionado por Google, que se supone que debe ir en la sección principal:

 <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=myGtagID"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'myGtagID'); </script>

Aquí está la llamada que ya está en cada página web en su sección de cabecera:

 <script type="text/javascript"> <!-- window.onload=function(){ analytics(); } //--> </script>

Aquí está el código dentro de mi archivo js externo:

 function analytics(){ /* Universal Analytics property (analytics.js) - OLD CODE WHICH WORKS */ var _gaq = _gaq || []; _gaq.push(['_setAccount', 'myUA_ID']); _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); })(); /* Google Analytics 4 property (gtag.js) - NEW CODE NOT WORKING */ gtag.push(['js', new Date()]); gtag.push(['config', 'myGtagID']); (function() { var ga4 = document.createElement('script'); ga4.type = 'text/javascript'; ga4.async = true; ga4.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.googletagmanager.com/gtag/js?id=myGtagID'; var t = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga4, t); })(); }
about 3 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

Actualmente, GA4 no funciona con el protocolo file://, solo con http:// y https://

¿Está utilizando el protocolo file:// en Cordova, por ejemplo? Si es así, GA4 bloqueará los análisis.

about 3 years ago · Juan Pablo Isaza Denunciar

0

Acabo de echar otro vistazo a tu código. Parece que está intentando usar GA4 tal como usó GA3. Los 2 no son interoperables y no comparten los mismos métodos y propiedades. GA4 es un producto analítico completamente nuevo de Google.

Consulte la documentación de Google para obtener más detalles.

about 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda