Afficher un compteur de vues dans vos articles WordPress

Mis à jour le :

Comment afficher le nombre de fois qu’une page de votre site WordPress a été vue ?

Cette question récurrente trouve une réponse simple avec WP-PostViews, une extension gratuite de Lester Chan, présente depuis 2006 sur le répertoire officiel de WordPress et toujours mise à jour. Elle compte les vues de chaque article, page ou type de contenu personnalisé, et vous laisse choisir où afficher ce nombre.

La première étape consiste à télécharger le plugin WP-PostViews à partir du lien suivant :

WP-PostViews

Plugin WordPress permettant d’afficher un compte de vues sur un article ou une page. Failles de sécurité détectées par BoiteAWeb, en attente de correction. »

Taille du fichier : 17 Ko

Inutile en revanche de télécharger les anciens fichiers de traduction française proposés ci-dessous : si votre site est en français, WordPress installe lui-même la traduction de l’extension, en même temps qu’elle, puis avec ses mises à jour.

WP-PostViews 1.50, fichiers de traduction française

Traduction française du plugin WP-PostViews.

Taille du fichier : 17 Ko

La traduction installée par WordPress reste partielle : une partie de l’écran de réglages s’affiche encore en anglais.

Procédez à l’installation du plugin de façon manuelle ou automatique via le menu Extensions > Ajouter une extension : recherchez « WP-PostViews », cliquez sur Installer maintenant, puis sur Activer. L’extension demande WordPress 6.8 et PHP 8.2 au minimum.

Paramétrage des options de WP-PostViews

Une fois l’extension activée, un nouvel élément WP-PostViews apparaît dans le menu Réglages. Son écran, intitulé Post Views Settings, compte deux onglets : Settings et Templates. Les vues sont comptées dès l’activation, et une colonne Vues, triable, apparaît dans la liste des articles.

Capture d'écran - Configuration de WP-PostViews
Le panneau d’options de WP-PostViews dans sa version de 2010

Je ne vais pas détailler ici toutes les fonctionnalités, car elles sont largement compréhensibles de tous.

Je relèverai pour autant la possibilité de choisir :

  • Le type de visiteur comptabilisé, avec le réglage Compter les vues de (Tout le monde, Visiteurs uniquement ou Utilisateurs enregistrés uniquement) : gardez la valeur par défaut, Visiteurs uniquement, pour que vos propres visites ne soient pas comptées ;
  • La possibilité d’exclure les robots, avec Exclure les vues des robots : choisissez Oui, car la valeur par défaut est Non ;
  • Le comptage en Ajax, avec Utiliser Ajax pour mettre à jour les vues : ce réglage n’apparaît que si votre site utilise un cache de pages (constante WP_CACHE active). Laissez-le sur Oui, sa valeur par défaut, sans quoi les visites des pages servies depuis le cache ne seraient pas comptées ;
  • Le texte affiché, dans l’onglet Templates : par défaut, le nombre de vues suivi du mot « vues ».

Libre à vous de modifier les options selon vos besoins. Les options d’affichage par type de page (accueil, archives, articles…) ont en revanche disparu avec la version 2.0 : le compteur apparaît uniquement là où vous le placez, comme expliqué ci-dessous.

Édition du thème WordPress

Évidemment, ce plugin n’affichera aucun compteur tant que vous ne lui aurez pas indiqué où le placer. La raison est simple : c’est à vous de choisir l’emplacement de ce compteur et non pas l’inverse. La méthode dépend de votre thème : avec un thème basé sur les blocs, comme Twenty Twenty-Five, tout se passe dans l’éditeur de site, sans code ; avec un thème classique, il faut modifier un fichier PHP.

Avec un thème basé sur les blocs

Ouvrez Apparence > Éditeur, puis Modèles, et choisissez le modèle Publications seules, qui affiche vos articles. Sous le titre ou près de la date, ajoutez un bloc Code court contenant [views], puis cliquez sur Enregistrer. Chaque article affiche alors son propre nombre de vues.

Modèle Publications seules de Twenty Twenty-Five dans l’éditeur du site, avec un bloc Code court contenant [views] sélectionné juste sous le titre de la publication, et ses réglages dans la barre latérale.
Le bloc Code court ajouté sous le titre, dans le modèle Publications seules

Depuis sa version 2.0, l’extension propose aussi son propre bloc, Post Views, dans la catégorie Widgets de l’outil d’insertion : il donne le même résultat sur le site (dans l’éditeur d’un modèle, son aperçu affiche simplement un compteur à zéro, faute d’article associé). Le code court accepte enfin un identifiant : [views id="123"] affiche le nombre de vues du contenu n° 123, où que vous le placiez.

Avec un thème classique

Rassurez-vous la procédure n’a rien de vraiment compliqué en soi bien que des notions de PHP soient souhaitables.

Dans cet exemple, je pars du principe que le compteur devra s’afficher dans vos articles.

Ouvrez donc le fichier single.php présent dans le dossier /wp-content/themes/NOM_DU_THEME/single.php. D’ordinaire, un compteur de vues se positionne à proximité du titre et des informations de l’article (catégorie, auteur, date, etc.).

Travaillez de préférence dans un thème enfant : une modification faite directement dans le thème disparaît à sa prochaine mise à jour.

Insérez à présent la ligne de code suivante à l’emplacement souhaité, à l’intérieur de la boucle de WordPress :

<?php if(function_exists('the_views')) { the_views(); } ?>

Sauvegardez le fichier, actualisez votre site, puis cliquez sur un article. Si tout a fonctionné, votre compteur de vues devrait s’afficher. Avec le réglage Visiteurs uniquement, vos propres visites ne sont pas comptées : vérifiez que le nombre augmente dans une fenêtre de navigation privée.

Capture d'écran - Compteur de vues sur WordPress Channel
Un exemple d’intégration sur WordPress Channel

J’insiste sur le fait que chaque thème est différent et que vos souhaits le sont tout autant. Je fournis ici une méthode générique pour donner des pistes au plus grand nombre d’entre vous.

Le plugin WP-PostViews est l’un des plus utilisés pour comptabiliser le nombre de vues avec WordPress. Les utilisateurs avancés iront plus loin dans ses usages en créant par exemple une page des articles les plus vus.

Vous préférez un compteur qui s’affiche automatiquement avant ou après le contenu, sans toucher au thème, ou qui ne compte qu’une vue par visiteur sur une durée donnée ? Tournez-vous vers Post Views Counter : cette extension sait aussi importer les vues déjà comptées par WP-PostViews.

Une fois les vues comptabilisées, vous pouvez créer une page des articles les plus populaires.

Avatar de Aurélien Denis

Protégez votre site WordPress

Vos données sont précieuses,
ne prenez pas le risque de tout perdre.
Confiez-moi votre maintenance !

Ces articles devraient t’intéresser…

50 réponses

  1. Avatar de f4b1
    f4b1

    Merci beaucoup, je cherchais comment faire et cette extension est parfaite !

  2. Avatar de modia
    modia

    bonjour et si on veut afficher ces vue s la en couleurs comment ont fait the_views()

  3. Avatar de iris-groupe
    iris-groupe

    bonjour,
    je debute dans le WordPress,
    j’ai fais un site wordpress qui permet de soumettre des fichiers ,
    les dossiers s’enregistrent dans dans une table.
    j’aimerais savoir comment faire pour savoir le nombre de fichier soumis par jour?
    le code ou le plugin qui permet de le faire?
    BD phpMyAdmin
    j’aimerais l’afficher sur la page d’acceuil de mon site le nombre de fichier soumis par les visiteurs.
    Merci de bien vouloir me repondre.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Bonjour, pour toute demande particulière merci de passer par la page contact du site. En cette période de congés, aucune réponse ne vous sera adressée avant le 15 août. Merci à vous.

  4. Avatar de Benjamin
    Benjamin

    Bonjour
    Je voudrais savoir si il était possible de personnaliser le nombre de vue avec ce plugins ?
    C’est a dire que je voudrais parfois booster le nombre de vues sur mes articles

    Merci d’avance

    1. Avatar de Aurélien Denis
      Aurélien Denis

      De mémoire c’est stocké dans un champ personnalisé donc je dirais que oui.

  5. Avatar de chris
    chris

    bonjour,
    comment fait-on pour télécharger tous les fichiers de la traduction français en une seule fois ? Merci.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Faites clic droit Enregistrer la cible du lien sous… si besoin.

  6. Avatar de noaneo
    noaneo

    bonjour,
    mais dès qu’on installe un cache, les données ne sont plus bons, un article en moyenne était vue 200 fois, là 16 fois.

    1. Avatar de noaneo
      noaneo

      bonsoir,
      je m’auto réponds, il me semble avoir trouvé, un plugin qui fonctionne à peu près, http://wordpress.org/plugins/ajax-hits-counter/

  7. Avatar de arpaja
    arpaja

    mon plugin wp postviews est installé et activé, mais il n’apparait pas dans le menu reglages. j’utilise le theme tpsunrise
    merci pour votre aide

    1. Avatar de Aurélien Denis
      Aurélien Denis

      A voir si WordPress est à jour et si le plugin est compatible avec cette version ou incompatible avec d’autres plugins.

  8. Avatar de Francois
    Francois

    Peut être pourriez vous me renseigner. Je voudrais afficher le nombre de vue par article mais uniquement dans mon admin, et non pas sur le site. J’avais un ancien blog qui à une colonne Views aprés la date de publication. Pourtant lorsque l’on installe wp cette possibilité n’apparait plus.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Ce plugin affiche une colonne vues dans l’admin. Il convient donc de ne pas l’afficher côté site. 😉

  9. Avatar de alex
    alex

    Bonjour, après l’installation et l’activation, post view ne s’affiche pas dans Réglages du tableaux de bord…. Une solution? Merci

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Hum, mets à jour WordPress et vérifies que le plugin correspond à ta version.

  10. Avatar de doudou
    doudou

    Merci, le plugin est passé à la version 1.60 via une mise à jour.
    Il marche parfaitement.
    Un seul regret: le compteur part de zéro alors que les articles ont des milliers de visites.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Un regret compréhensible mais normal : impossible de compter sans avoir compté précédemment. 🙂

  11. Avatar de SEO Sphère
    SEO Sphère

    Bonsoir,

    est-il possible de récupérer les posts les plus vus en utilisant « query_posts() » ?

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Peut-être mais pas en natif car il faut trouver un moyen de les compter…

  12. Avatar de thierry
    thierry

    Bonjour, moi je voudrai centre le compteur de vue, mais comment faire. voici une copie ci-dessus de mon fichier single.php. Merci

    <?php
    get_header();

    if (have_posts())
    {
    while (have_posts())
    {
    art_page_navi();
    art_post();
    comments_template();
    }
    art_page_navi();
    } else {
    art_not_found_msg();
    }

    if(function_exists('the_views')) { the_views();
    }

    get_footer();

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Tu devrais essayer en ajoutant une div autour de la fonction relative au compteur de vues.

      1. Avatar de thierry
        thierry

        Ah je sais pas faire, tu peux stp me faire un exemple ? merci

  13. Avatar de Dorian
    Dorian

    Bonjour,
    J’ai suivi les explications pour adapter à mon thème et cela fonctionne super bien.
    Mon souci qui est évoqué ici est que j’avais déjà post-views qui ne semble pas être le même que celui qui est demandé de télécharger puisque sinon avec mon ancien post-views cela ne fonctionne pas.
    J’ai une bdd de mon ancien post-views qui était complété au fur et à mesure. Exemple pour un article j’ai en nombre de vues 1250. Avec le nouveau wp-postviews, j’ai mis le code dans l’article cela reprend à zéro. Je me demande donc ou sont stockés les nouvelles données pour que au pire je reprenne un à un les nombres de vues.
    En vous remerciant
    Dorian

    1. Avatar de Aurélien Denis
      Aurélien Denis

      De mémoire, chaque article dispose d’un champ personnalisé ou custom field contenant la valeur correspondant au nombre de vues.

  14. Avatar de loupi
    loupi

    Voila j’aimerai savoir s’il était possible de n’afficher le nombre de vues seulement aux admin du site ?!

    1. Avatar de Aurélien Denis
      Aurélien Denis
  15. Avatar de Yggdrasill88
    Yggdrasill88

    Merci pour cet article 😉

    Cependant, je serai intéressé de savoir comment faire le bloc « Articles populaires » qui se trouve à la page d’accueil.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      C’est que du code PHP repris à ma sauce à partir d’autre bout de code donc bon… vu qu’il n’y a pas de solution standard je ne préfère pas en faire un tutoriel car cela ne fonctionnerait chez personne. 🙂

  16. Avatar de Ludovic
    Ludovic

    Merci beaucoup cela m’a beaucoup aider!

  17. Avatar de Martin47
    Martin47

    Il faut préciser que la plupart des plugins de Lester ‘GaMerZ’ Chan ne sont plus mis à jour depuis un bon moment, et que j’ai trouvé que beaucoup n’étaient pas compatibles avec WordPress 3.0 et encore moins en mode multi-site. (J’ai fait beaucoup d’essais et je pense qu’ils doivent inclure du code php qui empèche/plante le chargement et donc la visualisation de la home page).

    Moi j’utilise le plugin simplehitcounter qui semble marcher correctement sur 3.01 avec le thème twentyten

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Oui tout à fait mais il est possible d’en faire fonctionner quelques uns quand même.

      Par exemple, en les activant sur chaque site un par un – fonctionnel pour WP-PageNavi dans mon cas. 🙂

  18. Avatar de macbrain
    macbrain

    Ok ç’est bon je l’ai mis dans l’index .

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Auto-réponse ! 😎

  19. Avatar de macbrain
    macbrain

    Une question con ,

    Si je veux afficher ce compteur sur la page d’acceuil du blog pour tous les articles et pas seulement quand je clique sur un article en particulier comment je fais ?
    Merci

  20. Avatar de picool
    picool

    Question : le compteur ne prend en compte qu’à partir de l’installation et de sa mise en place?

  21. Avatar de Ekho
    Ekho

    Ce plugin m’a toujours intéressé, mais il a un gros couac de base, selon moi…

    S’il n’est pas installé sur un blog neuf et vierge, les articles les plus récents auront forcément plus de visites que les articles plus anciens (ce qui ne reflète donc pas la popularité, mais juste la chronologie).

    1. Avatar de Aurélien Denis
      Aurélien Denis

      C’est une remarque très pertinente à laquelle je n’avais pas pensé !

      Mais c’est aussi un problème difficilement à régler…

      1. Avatar de Dr Manhattan
        Dr Manhattan

        comment ?

      2. Avatar de Emery
        Emery

        Comment régler ce problème ? Merci

        1. Avatar de Aurélien Denis
          Aurélien Denis

          En prenant en compte le nombre de commentaires dans les articles qui est une valeur stockée de base. De nombreux plugins font cela très bien (il suffit de chercher dans le référentiel).

          C’est la seule idée que j’ai trouvée ! 🙂

          1. Avatar de stane
            stane

            bonjour et merci pour ce plugin,
            la solution serait de pouvoir donner une valeur de départ pour le compteur… certains pourront tricher mais bon, l’info intéresse surtout le propriétaire, s’il fausse ses propres données…

            Est-ce possible d’implémenter une valeur de départ ?

            Merci encore,
            bonne journée

  22. Avatar de Alecsy
    Alecsy

    Ce plugin est vraiment, mais il ne fonctionne pas en mode multisite 🙁

    Vivement une mise à jour.

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Dommage en effet, mais quelle est l’erreur obtenue – juste pour info ?

      Côté mise à jour, il me semble que l’auteur a donné un coup de frein au développement de ses plugins par manque de temps…

      1. Avatar de Alecsy
        Alecsy

        Bah en fait le plugin marche sur le blog principal sans problème.

        Par contre quand on régle les options sur les autres blogs, on moment où on valide on est redirigé sur le blog principal et les options de l’autre blog reste vide.

        Et sur le site ça me met : WARNING: ARRAY_KEY_EXISTS() EXPECTS PARAMETER 2 TO BE ARRAY, BOOLEAN GIVEN IN /***/WP-POSTVIEWS/WP-POSTVIEWS.PHP ON LINE 126

  23. Avatar de billboc
    billboc

    je cherche des info pour afficher dans ma sidebar la liste des 5 Articles les plus vus justement… une petite idée ? ou un début de piste ?

    au cas ou… Merci !

    ++

    1. Avatar de Aurélien Denis
      Aurélien Denis

      Soit tu le codes en PHP avec l’aide du fichier d’aide du plugin, également accessible ici : http://lesterchan.net/wordpress/readme/wp-postviews.html

      Soit, tu utilises directement le widget fourni en le configurant pas à pas. 😉

      1. Avatar de billboc
        billboc

        Merci beaucoup le lien répond à ma question !! (j’avais du passer à travers…)

        1. Avatar de Louis
          Louis

          As-tu réussi à coder une liste avec les 5 articles plus vues ?
          Si tu peux faire partager cela m’intéresserait.

          Merci

        2. Avatar de Louis
          Louis

          C’est bon j’ai trouvé :

          Modération de l’administrateur : le code doit être encodé ou merci d’utiliser un service comme pastebin 😉

          En revanche pour modifier le style de l’extension je pense que cela va être un peu plus dur.