Cómo implementar Google Tag Manager en PrestaShop

Implementar Google Tag Manager en PrestaShop es una de las tareas que más libertad te dará como profesional. Te permite gestionar etiquetas sin tocar el código fuente cada vez que necesites medir algo nuevo. En mi experiencia con clientes, lo que mejor me ha funcionado es trabajar directamente sobre las plantillas o mediante un módulo de confianza.

Implementación mediante código en archivos .tpl

Si prefieres no depender de módulos externos, puedes insertar el contenedor de Tag Manager directamente. Primero, localiza los archivos header.tpl y layout-both-columns.tpl en tu directorio /themes/tu-tema/templates/partials/ y /themes/tu-tema/templates/layouts/, respectivamente.

Es obligatorio envolver el código de GTM entre etiquetas {literal} ... {/literal}. Si olvidas este paso, Smarty (el motor de plantillas de PrestaShop) intentará procesar las llaves del código de Google como si fueran instrucciones de programación, lo que provocará errores en tu web.

  • En header.tpl: Inserta el fragmento que debe ir en la cabecera.
  • En layout-both-columns.tpl: Añade el código correspondiente al body, justo después de la apertura de la etiqueta.

Lo que he visto que genera más dolores de cabeza es la visualización de los cambios. PrestaShop gestiona el caché de forma agresiva.

Alex Amigo

¿Necesitas ayuda con tu estrategia SEO?

Trabajemos juntos para hacer crecer tu negocio con una estrategia digital personalizada.

Gestión del caché para visualizar los cambios

Si tras subir el código no ves cambios, no te desesperes. La mayoría de las veces el problema está en la configuración de rendimiento. Para que las modificaciones se apliquen correctamente durante el desarrollo, ve a Parámetros Avanzados > Rendimiento y ajusta lo siguiente:

  • Compilación de plantillas: Selecciona 'Forzar compilación'.
  • Caché: Desactívala temporalmente.

Una vez realizados estos ajustes, pulsa el botón de Borrar caché. Solo después de este paso, los cambios en los archivos .tpl se reflejarán en el frontend. Personalmente, siempre dejo activada la opción de forzar compilación mientras realizo implementaciones técnicas para evitar tener que borrar la caché manualmente cada vez que edito una etiqueta.

Si decides usar un módulo, el proceso es más rápido, pero el principio de depuración es idéntico: si no ves el contenedor cargando en tu extensión Tag Assistant, revisa siempre que la caché de Smarty esté limpia.

Preguntas frecuentes

¿Es mejor usar un módulo o insertar el código manualmente?

Ambas funcionan bien. El módulo es más rápido si no tienes conocimientos técnicos, mientras que la inserción manual te da mayor control y evita dependencias.

¿Por qué no veo mis cambios tras modificar los archivos .tpl?

Casi siempre se debe al sistema de caché de PrestaShop. Asegúrate de activar 'Forzar compilación' y borrar la caché en la sección de Rendimiento.

¿Qué pasa si olvido usar las etiquetas {literal}?

El motor Smarty intentará interpretar el código de Google como una función, lo que causará un error de sintaxis y probablemente dejará de cargar tu tienda.