google analytics rails

Comment intégré Google Analytics dans une application web Ruby On Rails ?

Partagez sur:

Ruby On Rails est l’un des framework le plus utilisé au monde, dans ce mini tutoriel nous allons voir comment on peut intégrer google analytics dans une application web développé avec le framework Ruby On Rails enfin de pouvoir analyser le trafique des utilisateurs de votre application.

Dans ce tutoriel nous supposerons que vous utilisez une version récentes de Rails et du gem Turbolink.

Création de votre compte Google analytics

Pour suivre ce tutoriel, nous supposons que vous avez déjà créer votre compte google analytics sur le site officiel de l’outil ; si c’est pas le cas vous êtes prier d’aller créer votre compte google analytics, vous pouvez suivre ce lien pour la création de votre compte.

Intégration dans votre application

Une fois votre compte création, google analytics vous fourni le code tracking javascript avec l’identifiant de votre compte.

Pour l’intégration dans une application Rails vous plusieurs possibilités, soit vous utilisez un gem (plugin) ou soit vous le faite manuellement, c’est la dernières options que nous verrons dans ce tutoriel.

Mini de notre code de tracking fourni par google analytics, nous allons créer un fichier partial dans notre dossier : « views/layouts/partials ».

Nous allons nommez ce fichier « _google-analytics.html.erb ».

Pour le nom du fichier, vous êtes libre de choisir le nom qui vous convient .

Nous allons ouvrir ce fichier et nous copions le code de tracking javascript fourni par google analytics.

<% if Rails.env.production? %>

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

gtag('config', 'UA-XXXXXXXX');
</script>

<% end %>

NB : Vous avez remarqué que dans le code ci-dessus, nous avons entouré le code par une condition, c’est à dire, nous exécutons ce code quand notre application est démarré en mode production.

Apres nous sommes libre d’inséré ce fichier partial dans n’importe layout de notre choix :

Exemple :

 

<!DOCTYPE html>
<html>
<head>
<title>Titre de votre application</title>
<%= csrf_meta_tags %>

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
<%= render 'layouts/partials/google_analytics' %>

</head>



<%= yield %>

</body>
</html>

Utilisation avec turbolink

Les dernières versions de Rails viennent directement avec le gem « Turbolink », qui casse par défaut le comportement de jquery, pour que votre tracking continue de marcher, vous obligez de gérer un événement au niveau de tuborbolink, qui est l’événement de chargement de la page, vu que avec turbolink, lorsque vous chargez une page, c’est pas toute la page qui est rechargée, mais juste la partie concerné.

Donc pour ce faire nous allons créer un fichier javascript dans notre répertoire « assets/javascripts ».

Nous allons appeler ce fichier « google_analytics.js » et insérer le code ci-dessous :

document.addEventListener('turbolinks:load', function(event) {
if (typeof gtag === 'function') {
gtag('config', 'UA-XXXXXX', {
'page_location': event.data.url
});
}
});

Une fois que cela est faite on va inclure ce fichier dans notre fichier « application.js » au si la directive « require_tree . » n’est pas activé dans votre fichier « application.js »

//= require google_analytics

Au cas si turbolink n’est pas présent dans votre projet, la dernière partie concernant l’intégration avec turbolink n’est pas obligatoire.

Nous sommes arrivé à la fin de ce tutoriel, j’espère qu’il vous a aidé.

 

LIRE AUSSI: Créer une application en ligne de commande en Ruby avec Thor

Par Amonce DEMBELE


Partagez sur: