Suivre quotidiennement ses statistiques de fréquentation, quand on a plusieurs sites en ligne, ce n’est pas une sinécure ! Google Analytics est un service très pertinent, mais le nombre de clics nécessaire pour avoir une vision globale est plutôt rébarbatif. Heureusement, l’API permet de se concocter un rapport personnalisé assez facilement, notamment avec le projet GAPI, interface de connexion pour PHP.
Le principe est très simple. Voici un exemple de code pour récupérer le nombre de pages vues et de visiteurs pour les 30 derniers jours, sur chacun de vos blogs :
<?php
require 'gapi.class.php';
// informations de connexion à votre compte google analytics
define('ga_email','votre@email.com');
define('ga_password','votremotdepasse');
$ga = new gapi(ga_email,ga_password);
//on récupère les données du compte
$ga->requestAccountData();
//la requête doit se faire sur une fourchette de dates au format yyyy-mm-dd
$today = date('Y-m-d');
$monthago= date('Y-m-d',time() - 60*60*24*30);
//pour chaque profil de site enregistré sur le compte :
foreach($ga->getResults() as $account){
// on récupère un tableau indexé sur la "date" contenant les informations "pageviews" et "visits". Le résultat est trié sur la "-date" (du plus gros chiffre au plus petit, donc du plus récent au plus ancien).
$ga->requestReportData($account->getProfileId(), array('date'), array('pageviews','visits'), '-date', null, $monthago,$today); ?>
<h1><?php echo $account; ?></h1>
<p>Pages vues : <?php echo $ga->getPageviews() ?></p>
<p>Visites : <?php echo $ga->getVisits() ?></p>
<?php } ?>
Pour avoir le détail par jour, il suffit de développer un peu :
<?php
$ga->requestReportData($account->getProfileId(), array('date'), array('pageviews','visits'), '-date', null, $monthago, $today);
foreach($ga->getResults() as $result){ ?>
<h2><?php echo $result; ?></h2>
<p>Pages vues : <?php echo $result->getPageviews(); ?></p>
<p>Visites : <?php echo $result->getVisits(); ?></p>
<?php } ?>
Mais on peut aller beaucoup plus loin, en récupérant les sites référents, les mots-clés ou les navigateurs utilisés. Par exemple, pour afficher les sites référents et le nombre de visites pour chacun, la requête est :
$ga->requestReportData($ga_profile_id, array('source','referralPath'), array('visits'), '-visits', 'medium == referral', $monthago, $today);
Notez ici la présence du filtre 'medium == referral'
, qui permet de garder uniquement les vrais sites référents dans la liste des résultats (donc exclure les moteurs de recherche). A contrario, pour afficher les mots-clés utilisés en provenance des moteurs de recherche :
$ga->requestReportData($ga_profile_id, array('source','keyword'), array('visits'), '-visits', 'medium == organic', $monthago, $today);
Bref, il y a énormément de combinaisons possibles. La liste des données exploitables est visible sur la page Dimensions & Metrics Reference de la documentation Google.
Grâce à ce système, nous pouvons complètement nous passer du site Google Analytics et développer notre propre interface d’étude des statistiques en fonction de nos besoins réels.
Dans un prochain billet, nous verrons comment utiliser l’API Google Chart pour réaliser des graphiques avec ces données.
merci infiniment pour cette article
Excellent, bravo et merci!
Marc
Bonjour, merci pour cet article!
j’aimerais également savoir si vous aviez créé un billet pour réaliser des graphiques avec l’API Google Chart à partir des données récupérées sur analytics? merci d’avance.