Skip to content

Revues en ligne dans Primo : avoir des stats d’accès aux revues

06/03/2012

On me redira sans doute pour le présent billet que d’autres outils de Google Analytics permettent la même chose. Voilà, c’est dit. Maintenant, passons au coeur du sujet : utiliser Google Analytics pour avoir des stats sur l’accès aux ressources en ligne depuis notre interface de recherche.

1. Le problème

Au SCD de Nice, nous avons un AtoZ d’Ebsco qui fournit certaines statistiques — des stats d’utilisation de la plate-forme : nombre de sessions, nombre d’utilisations de l’interrogation par sujet, etc. Mystérieusement, d’ailleurs, il est impossible avec les stats fournies de savoir si le feuilletage par lettres de l’alphabet est utilisé ou complètement has been.

En revanche il permet d’avoir des stats d’accès à chaque ressource, ou pour un bouquet donné.

Parallèlement à cet AtoZ, nous injectons (par rechargements périodiques pour les mises à jour) toutes ces revues dans notre opac Primo, dans lequel nous avons injecté du script Google Analytics pour disposer de stats sur l’utilisation de l’interface : usage de la recherche avancée, des facettes, nombre d’accès aux notices détaillées, etc.

Donc nous avons deux interfaces d’accès, l’une exclusivement consacrée aux revues en ligne, l’autre permettant une recherche plus large. Que se passerait-il si on en supprimait une (la première, évidemment). Pour l’instant, on n’en sait rien : protestations des chercheurs ou silence complet ?

On pourrait faire ça en sauvage et couper l’accès, pour voir.

Mais nous avons préféré être un peu plus délicat (car les chercheurs sont des gens délicats — ou qui méritent toute notre délicatesse !). Donc nous avons choisi de comparer les stats d’accès aux ressources en ligne, Primo d’un côté, AtoZ de l’autre.

Autrement dit : comment savoir si les chercheurs accèdent plus fréquemment à leurs revues depuis Primo ou depuis l’AtoZ ? Côté AtoZ, c’est bon. Mais côté Primo ?

2. La solution apportée

C’est sur Twitter qu’on m’a soufflé la réponse (comme souvent, Symac et Jsicot — merci à eux). L’objectif est d’injecter du code Google dans chaque lien hypertexte pointant vers une revue.

Ainsi, au lieu d’avoir juste :

<a target="_blank"  href="http://medicine.plosjournals.org/perlserv/?request=get-archive&issn=1549-1676">En ligne</a>

Je veux le code suivant :

<a target="_blank" onclick="javascript: pageTracker._trackPageview('/sortant/PLoS - Public Library of Science/PLoS medicine');"PLoS Med');" href="http://medicine.plosjournals.org/perlserv/?request=get-archive&issn=1549-1676">En ligne</a>

Ca tombe bien : comme pour pointer vers nos revues en ligne dans Primo nous utilisons un champ local au lieu du champ « linktoresource », on est plus libres de son contenu.

Donc modification des règles de normalisation, pour qu’en plus de l’URL de la ressource, on récupère le nom du bouquet et le titre de la revue (le nom du bouquet permettant ensuite de faire des filtres sur une valeur commune pour l’ensemble des titres d’un bouquet), précédé et suivi de chaînes de caractères (attribut onclick, etc.)

Evidemment, dans la foulée on l’a aussi fait pour les ebooks venus du SIGB

Précision utile : il faut aussi intégrer dans le code la page un peu de JavaScript avec identifiant Google Analytics. Chez nous, c’est ce code-ci :
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-18391302-1");
pageTracker._trackPageview();
} catch(err) {}</script>

One Comment
  1. 06/03/2012 18:47

    Salut Étienne,

    Merci à toi pour ce tuto !
    Il est également possible d’utiliser la fonction « _trackEvent » (cf doc Google).

    Dans ce cas, il faudra placer dans les liens le code js suivant :
    onclick="_gaq.push(['_trackEvent','catégorie', 'action', 'libellé']);"

    Ici l’avantage, c’est que l’on peut utiliser trois variables.
    Par exemple, chez nous, on utilise la catégorie pour signifier le type de l’élément suivi dans Google Analytics (en effet, on peut imaginer utiliser ce système pour avoir des stats sur toutes les ressources disponibles sur nos sites web de BU : bases de données, revues, ebooks, tutoriels, vidéos, etc.)
    Dans action, on indique si le lien passe par le reverse proxy ou non (mais on peut très bien l’utiliser pour autre chose en fonction de la catégorie) et enfin dans libellé, on met soit l’url sortante en claire soit un « nom court » pour la ressource en question.

    Quelques exemples :

    Pour une ressource électronique non proxyfiée :
    <a target="blank" title="Persée " onclick="_gaq.push(['_trackEvent','eressources', 'noproxy', 'persee']);" href="http://persee.fr">Persée </a>

    Pour une ressource électronique proxyfiée :
    <a target="_blank" title="Business Source Premier " onclick="_gaq.push(['_trackEvent','ressourcElec', 'ezproxy', 'BSP']);" href="http://scdbases.uhb.fr/login?url=http://search.ebscohost.com/direct.asp?db=buh">Business Source Premier </a>

    Pour une revue en ligne en accès libre (ici la variable « action » sera utilisée pour récupérer le bouquet ) :
    <a target="_blank" title="Plos One " onclick="_gaq.push(['_trackEvent','erevue', 'DOAJ', 'plosone']);" href="http://www.plosone.org">Plos One </a>

    Pour un tutoriel, un screencast, une vidéo :
    <a target="_blank" title="Plos One " onclick="_gaq.push(['_trackEvent','guide', 'screencast', 'tutofactiva']);" href="http://www.youtube.com/watch?v=bAV3qkDHjMI">Tuto Factiva </a>

    Etc., etc.

    Toutes les statistiques sont ensuite consultables dans google analytics sous le menu Contenu > Événements et triables par catégories, actions ou libellés.

    Autre chose intéressante, lorsque une liste de ressources est accessible depuis plusieurs sites (site BU, opac, liste AtoZ, Facebook, libguides, etc), on peut souhaiter vouloir centraliser toutes les stats sous un même id GAnalytics afin d’éviter un travail fastidieux lorsque vient l’heure du bilan…

    Pour cela, il faut passer par un script intermédiaire.
    Par exemple dans le lien, on aura :

    onclick="javascript:return fonctionjs(this, 'catégorie','action', 'code ou url');return false;"

    Et dans l’en-tête de la page on ajoute le script js ci-dessous:


    <script type="text/javascript">
    function fonctionjs(link, category, action, opt_label){
    try {
    var pageTracker=_gat._getTracker("UA-XXXXXXX-X"); //l'id de ganaytics où centraliser les stats, ce dernier peut être différent de celui utilisé sur le site même
    pageTracker._trackEvent(category, action, opt_label);
    setTimeout('document.location = "' + link.href + '"', 100);
    } catch(err){ }
    return false;
    }
    </script>

    Ne vous inquiétez pas, il sera toujours possible de savoir d’où l’accès s’est fait en croisant avec les autres variables de GAnalytics notamment le « nom de domaine ».

    Voilà, j’espère que je n’ai pas été trop long et que mon explication est suffisamment claire :-\
    A+

    Julien

Les commentaires sont fermés.

%d blogueurs aiment cette page :