Agregar el código que da Google Analytics en el template es fácil pero como hacerlo dinamicamente, y tener un parámetro en el backend del template?

Primero modificamos el .xml del template exactamente el archivo templateDetails.xml y agregamos la siguiente línea:

<param type="spacer" default="Google Analytics" />
<param name="id_google_analytics" type="text" default="0" label="ID de Google Analytics" description="Introduce aqui el ID que te provee Google. Ej.: UA-XXXXXXX-X" />

Como ven ponemos un “0″ como valor por defecto para controlar un poco.

Estas dos lineas tiene que ir dentro de los tags params:

<params>
....
....
....
</params>

Tal vez no los tengan en su plantilla, en ese caso los agregan casi al final del documento. Una ves hecho esto revisen las propiedades del template en el backend del Joomla! y verán que ya aparecio una caja de texto para poner el ID de Google Analytics.

Ahora seguiremos con recepcionar la variable “id_google_analytics” y escribirla en el index de nuestro template junto al resto del script que google nos pide que pongamos en nuestras páginas para realizar el analisis.

Ahora nos toca abrir el index.php de nuestro template (o su similar en otros casos) y agregamos las siguientes líneas:

<?php
 $doc =& JFactory::getDocument();
 $id_google_analytics = $this->params->get('id_google_analytics');

if ($id_google_analytics != '0'){
 $google_analytics_javascript = '
     <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">
     try {var pageTracker = _gat._getTracker("'.$id_google_analytics.'");
	pageTracker._trackPageview();
	} catch(err) {}</script>';

}else{
     $google_analytics_javascript= '';
}
?>

Y un poco de explicación:

Primero recogemos el valor que pusimos en las propiedades del template dentro el backend del Joomla y lo guardamos en una variable de php con el nombre “id_google_analytics”,

Segundo hacemos una sonsulta y preguntamos si esa variable es distinta a “0″ (se acuerdan que le pusimos 0 por defecto), si es distinta a cero entonces generamos otra variable con todo el script de google mas el ID y si es igual a cero entonces la variable se queda vacía, pero, la instanciamos.

Por último escribimos la variable al final del documento justo antes de cerrar el body y tendría que quedar más o menos así:

<?php echo $google_analytics_javascript; ?>

</body>

Y como bien quedamos antes si es distinto a cero (quiere decir que pusieron el id de google analytics) la variable escribirá todo el código que necesita google para empezar a ejecutar el analytics de google y si es igual a cero entonces la variable escribirá nada!.

Espero les sirva el tutorial.

Para la siguiente les enseñaré a hacer un plugin que sirve como alternativa a esto para templates complicados.

Saludos.

 

  1. Por Hubert Spencer
    El 23 de abril de 2013 a las 23:15

    Y como bien quedamos antes si es distinto a cero (quiere decir que pusieron el id de google analytics) la variable escribirá todo el código que necesita google para empezar a ejecutar el analytics de google y si es igual a cero entonces la variable escribirá nada!.

1 Comentario en
“Como agregar Google Analytics al Template de Joomla!?”





Subir ↑↑