Trusted WordPress tutorials, when you need them most.
Beginner’s Guide to WordPress
Coupe WPB
25 Million+
Websites using our plugins
16+
Years of WordPress experience
3000+
WordPress tutorials
by experts

Comment afficher les publications populaires en fonction des vues dans WordPress (2 façons)

Note éditoriale : Nous percevons une commission sur les liens des partenaires sur WPBeginner. Les commissions n'affectent pas les opinions ou les évaluations de nos rédacteurs. En savoir plus sur Processus éditorial.

Vous souhaitez afficher les publications les plus populaires en fonction de leurs vues dans WordPress ?

En affichant vos publications de blog WordPress les plus populaires, vous pouvez aider les lecteurs à trouver votre meilleur contenu et le plus utile. De plus, cela peut les encourager à rester plus longtemps sur votre site.

Dans cet article, nous allons vous afficher comment afficher vos publications populaires par vues dans WordPress.

How to Display Popular Posts by Views in WordPress

Pourquoi afficher les publications les plus populaires en fonction des vues dans WordPress ?

Lorsque les utilisateurs/utilisatrices voient vos publications de blog WordPress les plus populaires, ils peuvent découvrir le contenu que leurs collègues lecteurs apprécient le plus. Ils peuvent ainsi consulter ces articles et participer à la conversation.

De plus, l’affichage de vos contenus les plus populaires dans WordPress peut renforcer votre preuve sociale. C’est comme si vous disiez aux utilisateurs nouveaux/utilisatrices : « Hé, d’autres personnes ont trouvé ces publications vraiment utiles, et vous pourriez en faire autant ! ».

WPBeginner's trending and popular posts

Enfin, afficher vos publications de blog en vogue peut inciter les internautes à rester plus longtemps sur votre site et à explorer davantage votre contenu.

Plus l’engagement de vos utilisateurs/utilisatrices augmente, plus Google pense que votre contenu est bon et important. En retour, votre site peut se classer plus haut. De plus, cela donne aux Lecteurs plus de temps pour convertir, comme s’inscrire à votre newsletter.

Malheureusement, WordPress n’a pas de fonctionnalité ou de bloc intégré pour afficher vos publications les plus populaires en fonction des pages vues. Dans ce guide, nous allons vous afficher comment faire exactement cela avec une extension et avec du code.

Il vous suffit de cliquer sur l’un des liens ci-dessous pour accéder directement à votre méthode préférée :

Tutoriel vidéo

Subscribe to WPBeginner

Si vous préférez les instructions écrites, continuez à lire.

Méthode 1 : Afficher les publications WordPress les plus populaires en fonction des vues avec MonsterInsights

La façon la plus simple d’afficher les publications populaires en fonction des vues dans WordPress est d’utiliser une extension. Il existe en fait de nombreuses extensions WordPress pour les publications populaires, mais à notre avis, le meilleur choix est MonsterInsights.

The MonsterInsights Google Analytics plugin

Utilisé par plus de 3 millions de sites dans le monde, MonsterInsights est la meilleure extension Google Analytics pour WordPress. Bien que sa fonctionnalité principale soit les Statistiques, il dispose également d’une fonctionnalité simple/simple d’utilisation pour afficher vos publications les plus populaires.

Avant toute chose, vous devrez installer l’extension MonsterInsights et la connecter à votre compte Google Analytics. Pour plus de détails, consultez notre guide étape par étape sur l ‘installation de Google Analytics sur WordPress pour les débutants.

Note : Bien qu’une version gratuite de MonsterInsights soit disponible, nous utiliserons la version Pro car elle inclut la mis en avant des publications populaires.

Choisissez un thème pour lewidget des publications populaires

Une fois que vous avez activé et défini l’extension, accédez à Insights  » Popular Posts à partir du tableau de bord WordPress. Ensuite, cliquez sur l’article de menu  » Popular Posts Widget « .

The Popular Posts Widget in MonsterInsights

En défilant vers le bas, vous devrez sélectionner un thème pour afficher le widget des publications populaires. Il existe plusieurs options.

Certains incluent une image mise en avant pour la publication, tandis que d’autres ont une apparence plus minimale.

Choosing a popular posts widget theme in MonsterInsights

Si vous souhaitez voir à quoi ressemble le thème avant de faire votre choix, il vous suffit de descendre dans la page jusqu’à la section Prévisualisation du thème.

Vous pouvez également prévisualiser le thème dans un format large ou étroit. Avec le format Wide, vous verrez vos publications listées sous le contenu de la page ou de la publication, tandis que le format Narrow affiche les publications sur le côté droit de celle-ci, comme une colonne latérale.

Previewing the popular posts widget theme in MonsterInsights

Ensuite, défilons vers le bas jusqu’à la section  » Personnaliser le design « . Ici, vous pouvez modifier les couleurs du thème, la taille de la police, la mise en page et le nombre de publications à afficher.

Les options de personnalisation ici peuvent varier en fonction du thème que vous utilisez. Confirmez donc que vous pouvez explorer les différents thèmes pour voir celui qui vous convient le mieux.

Customizing the popular posts widget theme in MonsterInsights

Configurer le comportement du widget des publications populaires

Une fois que vous avez configuré le design du thème, vous devez vous rendre dans la section Comportement. C’est ici que vous contrôlerez la façon dont le widget des publications populaires apparaîtra sur votre site WordPress.

Dans les Réglages du style du widget, vous pouvez choisir d’utiliser le design que vous avez fait ci-dessus ou d’opter pour ne pas styliser le widget du tout. Avec la seconde option, le widget suivra le CSS du thème de votre site WordPress.

Ensuite, vous pouvez choisir comment le widget doit sélectionner vos publications les plus populaires. Ici, choisissez « Personnalisé ».

Some of the popular posts widget's behavior settings in MonsterInsights

Ce que vous devez faire ensuite, c’est activer l’option  » Ajouter les 5 meilleures publications à partir de Google Analytics  » ci-dessous. Mais avant cela, vous aurez besoin du module complémentaire Dimensions personnalisées de MonsterInsights et d’ajouter le type de publication en tant que nouvelle dimension personnalisée.

Cela permettra à MonsterInsights de choisir les publications les plus populaires sur la base des données de Google Analytics.

Pour ce faire, vous devez télécharger le module complémentaire MonsterInsights Dimensions et l’installer en tant qu’extension dans WordPress. Pour obtenir des instructions étape par étape, consultez notre guide sur l’installation d’une extension WordPress.

Ensuite, allez dans Insights «  Réglages et passez à l’onglet  » Conversions « . Cliquez ensuite sur  » Ajouter une nouvelle dimension personnalisée « .

Adding a new custom dimension in MonsterInsights

Sélectionnez ensuite « Type de publication » dans le menu déroulant.

Cela permettra à MonsterInsights de suivre les performances de vos articles de blog et autres types de publications personnalisées.

Selecting post type as a custom dimension in MonsterInsights

Il vous suffit maintenant de retourner dans Insights  » Popular Posts et d’aller dans ‘Popular Posts Widget’.

Il suffit d’activer le bouton de permutation  » Ajouter les 5 meilleures publications de Google Analytics « . Cliquez ensuite sur « Tester les publications automatisées » pour vérifier que la configuration a bien été effectuée.

Adding top 5 posts based on GA data in MonsterInsights

Si c’est le cas, vous verrez apparaître une fenêtre surgissante contenant un message de réussite.

Il doit indiquer : « Les données des Popular Posts peuvent être récupérées correctement. Veuillez noter : selon la date à laquelle vous avez configuré les paramètres des Dimensions personnalisées, il peut s’écouler jusqu’à 7 jours avant que les données des Popular Posts ne soient chargées à partir de Google Analytics.

Popular posts data can be fetched correctly popup message in MonsterInsights

En passant aux étapes suivantes, vous pouvez maintenant ajouter un titre qui apparaîtra au-dessus du widget. Il peut s’agir de quelque chose comme  » Consultez nos publications les plus populaires  » ou quelque chose de similaire.

En dessous, vous pouvez choisir si le widget doit être affiché dans tous les types de publication, être exclu de certaines publications et/ou apparaître uniquement dans certaines catégories de publications.

Ces réglages sont utiles si vous avez des types de publication personnalisés autres que les articles de blog et que vous avez l’impression que le widget des publications populaires n’y sera pas pertinent.

More behavior settings for the popular posts widget in MonsterInsights

L’une des dernières étapes consiste à embarquer le widget des publications populaires. Il existe plusieurs options : le placer automatiquement, utiliser un bloc Gutenberg, l’ajouter en tant que widget de la colonne latérale ou utiliser un code court.

Examinons chaque option l’une après l’autre.

The embed options of popular posts widget in WordPress

Embarquer automatiquement le widget des publications les plus populaires

Le placement automatique est recommandé si vous souhaitez que le widget s’affiche sur toutes les publications qui correspondent aux paramètres de comportement que vous avez définis précédemment.

Pour cela, il suffit d’activer le bouton Placement automatique.

Activating automatic placement for the popular posts widget in MonsterInsights

L’inconvénient de cette option est que vous ne pouvez pas ajuster le design du widget en fonction de ce qui convient le mieux à la publication ou à la page. Si vous avez besoin de ce type de fonctionnalité, vous pouvez essayer la méthode suivante.

Contenu embarqué du bloc des publications populaires dans une page ou un message

Si vous souhaitez avoir plus de contrôle sur l’apparence du widget sur une page ou une publication, cette méthode est faite pour vous.

Tout d’abord, allez dans l’éditeur de blocs de la publication ou de la page où vous voulez que le widget soit. Ensuite, cliquez sur le bouton d’ajout de bloc « + » n’importe où dans l’éditeur et recherchez le bloc Articles populaires.

Adding MonsterInsights' popular posts block in the WordPress block editor

Dans le panneau des Réglages du widget, vous verrez qu’il y a des options pour modifier le thème du widget, la taille de la police, les couleurs, le titre, la mise en page et le nombre de publications.

Ces réglages sont similaires à ceux que nous avons vus dans l’extension MonsterInsights.

MonsterInsights' popular posts block settings in the WordPress block editor

La seule modification réside dans le fait que vous ne pouvez pas modifier les publications sélectionnées dans le widget.

Cela dit, dans les Réglages du comportement, il est possible d’afficher uniquement les publications de certaines catégories. De cette façon, vous pouvez faire en sorte que les choix de publications populaires soient plus adaptés à vos besoins.

Choosing to only display posts from certain categories in the MonsterInsights popular posts widget

Une fois que vous êtes satisfait des réglages du bloc, il vous suffit de cliquer sur le bouton « Mettre à jour » dans les éditeurs/éditrices de publications et de pages.

Voici à quoi ressemble le bloc « Publications populaires » sur notre site de test :

Example of what the MonsterInsights popular posts block look like on the WordPress site

Contenu embarqué du widget Popular Posts dans une colonne latérale

Si vous utilisez un thème WordPress non bloqué qui dispose d’une zone de colonne latérale prête à accueillir des widgets, vous pouvez y ajouter le widget Popular Posts.

Il vous suffit de vous rendre dans Apparence  » Widgets. Ensuite, cliquez sur le bouton d’ajout de widget  » +  » dans la zone de la colonne latérale et recherchez le widget Popular Posts – MonsterInsights.

Adding the MonsterInsights popular posts widget to the sidebar area

Comme dans la méthode précédente, le widget comprend des réglages similaires pour personnaliser l’apparence de votre thème.

Ce qui est différent, c’est que l’interface est légèrement plus difficile à utiliser. Lorsque vous modifiez les réglages, vous ne pouvez pas voir à quoi ressemble réellement le widget. Vous devrez cliquer sur un autre widget ou sur une autre zone pour en avoir un aperçu.

Si vous êtes satisfait de l’aspect du widget, cliquez sur « Mettre à jour » dans le coin supérieur droit.

Updating the sidebar area after adding the MonsterInsights popuplar posts widget

Confirmez-vous sur votre site pour vérifier si la colonne latérale a l’air correcte.

Voici à quoi ressemble le nôtre :

Example of the MonsterInsights popular posts widget in a sidebar

Contenu embarqué du widget Popular Posts avec un code court

La dernière option consiste à utiliser un code court. Cette méthode est recommandée si les options ci-dessus ne fonctionnent pas pour votre cas d’utilisation spécifique.

Dans l’onglet Popular Posts Widget, défilez jusqu’à la section ‘Contenu embarqué Options’. Choisissez ensuite « Afficher à l’aide d’un code court » et cliquez sur le bouton « Copier le code court ».

Copying the popular posts widget shortcode in MonsterInsights

Après cela, il suffit de placer le code court où vous le souhaitez. En savoir plus, consultez notre guide sur l’ajout de codes courts dans WordPress.

Méthode 2 : Afficher les publications WordPress les plus populaires en fonction des vues avec du code

La méthode MonsterInsights est le moyen le plus simple d’afficher vos contenus les plus populaires et les meilleurs en fonction des vues dans WordPress. Mais si vous êtes à l’aise avec le codage, alors vous pouvez également utiliser du code pour afficher vos publications WordPress les plus populaires.

Pour cette méthode, nous vous recommandons d’utiliser une extension d’extraits de code comme WPCode, c’est ce que nous utiliserons dans ce guide.

WPCode - Best WordPress Code Snippets Plugin

WPCode permet d’insérer en toute sécurité du code personnalisé sans interagir directement avec vos fichiers WordPress. De plus, comme cette méthode nécessite l’utilisation de plusieurs extraits de code, l’extension rendra la gestion et le suivi de tous ces extraits beaucoup plus facile.

Tout d’abord, vous devez installer WPCode dans WordPress. Une version gratuite de WPCode est disponible, mais nous utiliserons la version Pro, car elle est livrée avec les fonctionnalités dont nous avons besoin pour insérer le code aux bons endroits.

Pour un guide d’installation étape par étape, consultez notre article sur l ‘installation d’une extension WordPress.

Ajouter la fonction compteur de vues des publications WordPress

Une fois l’extension activée, vous devez vous rendre dans Code Snippets  » + Add Snippet depuis le tableau de bord. Ensuite, survolez  » Ajouter votre code personnalisé (nouvel extrait)  » et cliquez sur  » Utiliser l’extrait « .

Use snippet

Vous êtes maintenant dans l’éditeur/éditrices d’extraits de code de WPCode. Avant d’insérer du code, ajoutez un titre à l’extrait.

Pour ce premier code, vous pouvez le nommer quelque chose comme « WordPress Post Views Counter Function ». En effet, le but de ce premier code est de créer une fonction pour compter les vues des publications dans WordPress.

Modifiez ensuite le type de code en « Extrait de code PHP ». Notez que tous les extraits de code que vous aurez à ajouter à partir de cet article sont en PHP.

Creating the WordPress Post Views Counter Function in WPCode

Ensuite, vous pouvez copier et coller le code suivant ci-dessous :

function wpb_set_post_views($postID) {
    $count_key = 'wpb_post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        $count = 0;
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
    }else{
        $count++;
        update_post_meta($postID, $count_key, $count);
    }
}
//Get rid of prefetching to keep the count accurate
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);

Défilez ensuite vers le bas jusqu’à la section « Insertion » et sélectionnez « Insertion automatique » pour la méthode d’insertion et « Exécuter partout » pour l’Emplacement. Cela fonctionne de la même manière que l’insertion du code dans le fichier functions.php de votre thème.

Ensuite, naviguez vers le côté supérieur droit de la page et rendez le code actif.

Cliquez ensuite sur « Enregistrer l’extrait ».

Choosing the insertion method and location in WPCode

À ce stade, vous devez ajouter un autre nouvel extrait de code personnalisé. Vous pouvez nommer celui-ci « Appel de la fonction de suivi des vues des publications ».

Ce code appellera la fonction ci-dessus et l’activera sur vos pages de publication unique.

Une fois cela fait, copiez et collez l’extrait suivant:

wpb_set_post_views(get_the_ID());

Ce qui est différent dans cet extrait de code, c’est que vous choisirez l’Emplacement « Insert After Post » (Insérer après la publication) parce qu’il est censé s’exécuter sur vos pages de publication unique.

Choosing Insert After Post as the code insertion location in WPCode

Lorsque vous avez terminé, il vous suffit d’activer le code et de l’enregistrer.

Insérer un crochet de suivi des vues des publications WordPress

Vous devez maintenant ajouter un nouvel extrait de code qui vérifie si la page actuelle est une publication unique. Si c’est le cas, il appellera la fonction WordPress Post Views Counter pour suivre et mettre à jour le nombre de vues de la publication.

Ainsi, chaque fois qu’un compte utilisateur visite la publication, le nombre de vues est mis à jour.

Nommons cet extrait « Crochet de suivi des vues des articles WordPress ». Insérez ensuite les lignes de code suivantes :

function wpb_track_post_views ($post_id) {
    if ( !is_single() ) return;
    if ( empty ( $post_id) ) {
        global $post;
        $post_id = $post->ID;    
    }
    wpb_set_post_views($post_id);
}
add_action( 'wp_head', 'wpb_track_post_views');

Vous pouvez choisir la méthode d’insertion comme « Insertion automatique » et l’Emplacement comme « Interface publique uniquement ».

Comme pour les étapes précédentes, il suffit d’activer le code et d’enregistrer l’extrait.

Choosing Frontend Only as the code insertion location in WPCode

Note : Si vous utilisez une extension de mise en cache, il se peut que cette technique ne fonctionne pas par défaut. Vous pouvez utiliser la fonctionnalité de mise en cache des fragments proposée par certaines extensions de mise en cache comme W3 Total Cache pour la faire fonctionner.

Ajout de fonctions pour récupérer le nombre de vues des publications et afficher les publications les plus populaires avec le nombre de vues

Nous en sommes maintenant aux dernières étapes de ce guide. Vous devez ajouter un extrait de code qui récupère et met en forme le nombre de vues pour une publication WordPress donnée. Cela sera utile ultérieurement lors de l’affichage de la liste des publications les plus vues.

Vous pouvez nommer ce code « Retrieve Post Views Count Function » et définir l’emplacement sur « Run Everywhere ».

Voici l’extrait de code :

function wpb_get_post_views($postID){
    $count_key = 'wpb_post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if($count==''){
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
        return "0 View";
    }
    return $count.' Views';
}

Confirmez une nouvelle fois que le code est activé dans WPCode et que vous l’enregistrez ensuite.

Une fois que vous avez fait cela, créez à nouveau un nouvel extrait de code et nommez-le  » Display Most Popular Posts with View Counts  » (Afficher les publications les plus populaires avec le nombre de vues). Il s’agit du code qui affichera vos publications les plus populaires en bas de vos articles de blog.

Dans la boîte de Prévisualisation du code, insérez l’extrait suivant :

// Customize the query parameters as needed
$popularpost = new WP_Query( array(
    'posts_per_page' => 3,         // Feel free to adjust the number of posts to display
    'meta_key' => 'wpb_post_views_count',
    'orderby' => 'meta_value_num',
    'order' => 'DESC'
));
?>

<div class="popular-posts">
    <h2>See Our Most Popular Posts</h2> <!-- Feel free to customize the title -->
    <ul>

    <?php while ( $popularpost->have_posts() ) : $popularpost->the_post(); ?>
        <li>
            <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
            - <?php echo wpb_get_post_views(get_the_ID()); ?>
        </li>
    <?php endwhile; ?>

    </ul>
</div>

<?php wp_reset_postdata(); 

Comme indiqué dans le code, n’hésitez pas à ajuster le nombre de publications à afficher et à personnaliser le titre de cette section.

Dans la section Insertion du code WPCode, assurez-vous de sélectionner « Insérer après la publication » pour l’Emplacement. Il suffit ensuite d’activer le code et d’enregistrer l’extrait.

Il ne reste plus qu’à visiter l’une des publications de votre blog et à voir si le code fonctionne. Voici à quoi ressemblent les publications les plus populaires par section de vues sur notre blog WordPress de test :

What the most popular posts by views section looks like made with WPCode

Astuce d’expert : Pour voir si votre code fonctionne sans modifier votre site de façon permanente, vous pouvez essayer le mode test de WPCode.

Cette fonctionnalité vous permet d’ajouter vos codes comme d’habitude et vous seul pouvez voir à quoi ils ressemblent sur l’interface publique. De l’autre côté, vos utilisateurs/utilisatrices interagiront avec votre site comme d’habitude.

Nous espérons que cet article vous a aidé à apprendre comment afficher les publications populaires en fonction des vues dans WordPress. Vous pouvez également consulter notre article sur la façon d’afficher les produits populaires dans WooCommerce et notre guide du débutant sur les champs personnalisés de WordPress.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Divulgation : Notre contenu est soutenu par les lecteurs. Cela signifie que si vous cliquez sur certains de nos liens, nous pouvons gagner une commission. Consultez comment WPBeginner est financé, pourquoi cela compte et comment vous pouvez nous soutenir. Voici notre processus éditorial.

Avatar

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi with over 16 years of experience in WordPress, Web Hosting, eCommerce, SEO, and Marketing. Started in 2009, WPBeginner is now the largest free WordPress resource site in the industry and is often referred to as the Wikipedia for WordPress.

L'ultime WordPress Toolkit

Accédez GRATUITEMENT à notre boîte à outils - une collection de produits et de ressources liés à WordPress que tous les professionnels devraient avoir !

Reader Interactions

166 commentairesLaisser une réponse

  1. Syed Balkhi says

    Hey WPBeginner readers,
    Did you know you can win exciting prizes by commenting on WPBeginner?
    Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
    You can get more details about the contest from here.
    Start sharing your thoughts below to stand a chance to win!

  2. Mrteesurez says

    I think it would be easier to use a plugin maybe Monsterinsights or another as it straight forward than using custom code, but the issue is, I don’t think using Monsterinsights will shows view counts ??

    • WPBeginner Support says

      MonsterInsights would mot show the view count by default if that is what you want to include with your popular posts.

      Administrateur

  3. mohadese esmaeeli says

    The display of popular posts is beneficial as it helps increase website traffic statistics. However, on the other hand, competitors can easily identify which posts and topics have been popular on your site. One of the sections I always explore for competitor analysis and finding trending topics is the « most popular articles » section on various websites.

    • WPBeginner Support says

      While that can be something to keep in mind, we normally find it best to add what is most important to your visitors instead of being concerned that your competitors will follow your content.

      Administrateur

    • Mrteesurez says

      Yes, competitors can use it to analytics ones website but you can just display it like WPbeginner, without adding the views count/counter.
      But mind you, visitors can use Semrush, Google, Similarweb and some other ways to analyze your site. You own is just to know how you are playing your games.
      Thanks for the insight.

  4. Moinuddin Waheed says

    Popular posts and related posts makes the user engagement intact and reduced bounce rate.
    it helps in more user interaction with the posts and articles.
    I have seen many bloggers showing views count and read time of the posts, like 5 minutes read or 3 minutes read.
    can we have popular posts and related posts where ever we want with this method? and
    Is this method can be used for achieving both these objectives like having read time based on word counts?

    • WPBeginner Support says

      You should be able to place it wherever widgets are allowed. For the time to read, it would depend on the plugin you use for that and if it has an integration or not.

      Administrateur

  5. Jiří Vaněk says

    I would like to ask if the snippet also works on the new WordPress 6.4.2. I followed the instructions, cleared the cache, but the most read articles do not appear under the article

      • Jiří Vaněk says

        Thank you for the reply. It’s already working. I had a mistake somewhere and unfortunately I don’t know where. In the end, I repeated the whole procedure twice more and it worked on the third try. Unfortunately, I don’t know what I did wrong, but the snippets really work. Thank you.

        • WPBeginner Support says

          Glad they started working for you, it’s always difficult to tell what went wrong when trying the same code again works when the previous time it didn’t.

  6. Chris says

    If we have caching enabled, can we avoid the caching problem by resorting to JavaScript (AJAX) to send the command to record the view? Would that work?

    • WPBeginner Support says

      While there is a complex way to have that workaround, we do not have a method we would recommend at this time.

      Administrateur

  7. Amir says

    Hello, thank you very much.
    It is very simple and practical.

    But with each reload, one visit is added.
    How can I fix this problem?

    Thankful

    • WPBeginner Support says

      Any time a user would reload a page or visit the page again would be another visit. For specifically excluding refreshes you would need to use a plugin with more advanced features.

      Administrateur

    • WPBeginner Support says

      You may want to try clearing all caching checking with your theme’s support to ensure they don’t have anything that would conflict with this

      Administrateur

  8. za says

    Thank you for the tutorial. I applied it and it works. No need another plugin to show popular posts and the customized counter in single.

    Thanks!

  9. Chris says

    Is it beyond the scope of this article to explain had you assign the functions to those buttons as in your screenshot:

    Recent Articles – Popular Posts – editor’s picks

    That is basically what I want to do…have buttons at the top of my posts page for recent, popular/trending, editors picks. I haven’t found any plugins that can do that. The all focus on side bar widgets.

    It looks like your article is starting to talk about this but where to go from there is beyond my current knowledge level.

    Thanks,
    Chris

  10. Amit Biswas says

    Getting double view count on refresh (single.php). Don’t know if the remove action is working or not for « adjacent_posts_rel_link_wp_head ». Useless so far. I tried everything that is possible to remove double count. Using this code in a custom made plugin.

  11. Hans says

    Thsi thing works greats.

    Now I want the columnn in admin to be sortable. any idea how to do this?

    many thanks!

  12. Trevor says

    Hey, thanks for the code. Only issue I’m having is the view count is incrementing by 2 instead of 1 on refresh. Any thoughts?

    • Fuchel says

      This was happening for me because I had:

      `set_post_views(get_the_ID());` in single.php
      AND
      `add_action( ‘wp_head’, ‘track_post_views’);` in my functions.php which was also adding `set_post_views(get_the_ID());` within it.

      By removing the line on single.php I fixed the double count.

  13. Bülent Sakarya says

    Hello..

    Using w3total cache but count not working correctly.

    don’t use child theme. how can I fix it?

    thanks..

  14. Ryley Ameden says

    Fixed this issue:

    Cannot use WP_Query, used get_posts and it is now working. Then use a foreach look to loop through the posts and display them. See below:

    $blog_cat_array = get_the_category();
    $blog_cat = $blog_cat_array[0]->term_id;

    $popularpost = array(
    ‘posts_per_page’ => 2,
    ‘meta_key’ => ‘wpb_post_views_count’,
    ‘orderby’ => ‘meta_value_num’,
    ‘order’ => ‘DESC’,
    ‘category’ => $blog_cat,
    ‘post_type’ => ‘post’,
    );
    $pop_posts = get_posts($popularpost);

    foreach($pop_posts as $pop_post){
    the_title();
    }

  15. Erwin Barendregt says

    I really like this option and have built it into my site.
    I have one question regarding the count. I found that the counts were rather high so I changed the code around a bit. With every count increase I wrote the IP address to a log file. I found hat two-third of the counts were legit and the other ones came from googlebot, apple, etc. and just now apews Is there any way to get the counts right and do you know if the ‘regular’ plugins have found a way around this?
    Thx!
    BTW: Keep up the good work, I thoroughly enjoy this site!

    • bah says

      you can take maxmind ISP IP database and only count humans. This is the best option. Second just dont count common bots user-agent-names

      • Erwin Barendregt says

        Thanks so much. I will definitely look into that.
        In the mean time I implemneted the solution which was implemented in the WordPress Popular Posts plugin. That works for now, but the solution you recommended seems more future-proof. Thanks again!

  16. John says

    Hi! Awesome! This code helped me a lot!

    Do you know how to display the posts with 0 views? I have to enter to the post page by using the url the first time, otherwise it doesn’t show.

  17. Gianmarco says

    Awesome thanks this is really useful, but a question. Doesn’t it slow down the loading of the page significantly?

  18. ayaz says

    Hi,

    This is very useful post, i really appreciate. Can i filter the post in category, I wanted to show the post of specific category.

    Thanks.

  19. Bojan says

    Ok this is great. For some reason, post count doesnt show numbers, not sure is it because i work on a local., but what i wanted to ask even more, is how to add so it count only in the last 7 days?

  20. DarkSafka says

    Sadly this does not work with W3 Total Cache with Page Caching enabled. Coul not get any « fragmented caching » to work either.

  21. REIBI says

    Hey,
    This works great. But I need to show popular post of a day, this code shows popular posts of all time. Is there anyway to show popular posts of a day only.

    Any help will be greatly appreciated.

    Thanks :)

    • Dimitrios Arkolakis says

      Try to add something like this in the WP Query

      ‘date_query’ => array(
      array(
      ‘year’ => $today[‘year’],
      ‘month’ => $today[‘mon’],
      ‘day’ => $today[‘mday’],
      ),

      • Nick Heurter says

        This doesn’t seems to work. Is there anyone who figures out how to display the most popular posts of the lasts 7 days?

        Thanks!

  22. Mawardiy says

    Hi, I use Goodnews 5.7.2 theme, but where i put « wpb_get_post_views(get_the_ID()); » in my theme, thank for u’r guidance

  23. Alex says

    Hey, thanks for the information.
    There’s a little problem. I put:

    function wpb_set_post_views($postID) {
    $count_key = ‘wpb_post_views_count’;
    $count = get_post_meta($postID, $count_key, true);
    if($count== »){
    $count = 0;
    delete_post_meta($postID, $count_key);
    add_post_meta($postID, $count_key, ‘0’);
    }else{
    $count++;
    update_post_meta($postID, $count_key, $count);
    }
    }
    //To keep the count accurate, lets get rid of prefetching
    remove_action( ‘wp_head’, ‘adjacent_posts_rel_link_wp_head’, 10, 0);

    function wpb_track_post_views ($post_id) {
    if ( !is_single() ) return;
    if ( empty ( $post_id) ) {
    global $post;
    $post_id = $post->ID;
    }
    wpb_set_post_views($post_id);
    }
    add_action( ‘wp_head’, ‘wpb_track_post_views’);

    function wpb_get_post_views($postID){
    $count_key = ‘wpb_post_views_count’;
    $count = get_post_meta($postID, $count_key, true);
    if($count== »){
    delete_post_meta($postID, $count_key);
    add_post_meta($postID, $count_key, ‘0’);
    return « 0 View »;
    }
    return $count.’ Views’;
    }

    and my visits counts always as two. What’s happening? Thanks.

    • ScoDal says

      I modified this a little to use it as a shortcode. To use this with a shortcode, add this to your functions.php:

      function wpb_set_post_views($postID) {
      $count_key = ‘wpb_post_views_count’;
      $count = get_post_meta($postID, $count_key, true);
      if($count== »){
      $count = 0;
      delete_post_meta($postID, $count_key);
      add_post_meta($postID, $count_key, ‘0’);
      }else{
      $count++;
      update_post_meta($postID, $count_key, $count);
      }
      }
      //To keep the count accurate, lets get rid of prefetching
      remove_action( ‘wp_head’, ‘adjacent_posts_rel_link_wp_head’, 10, 0);

      function wpb_track_post_views ($post_id) {
      if ( !is_single() ) return;
      if ( empty ( $post_id) ) {
      global $post;
      $post_id = $post->ID;
      }
      wpb_set_post_views($post_id);
      }
      add_action( ‘wp_head’, ‘wpb_track_post_views’);

      function wpb_get_post_views($postID){
      $count_key = ‘wpb_post_views_count’;
      $count = get_post_meta($postID, $count_key, true);
      if($count== »){
      delete_post_meta($postID, $count_key);
      add_post_meta($postID, $count_key, ‘0’);
      return « 0 View »;
      }
      return $count.’ Views’;
      }

      function wpb_most_viewed_posts() {
      // start output buffering
      ob_start();
      ?>
      4, ‘meta_key’ => ‘wpb_post_views_count’, ‘orderby’ => ‘meta_value_num’, ‘order’ => ‘DESC’);

      //begin loop
      while ($query->have_posts()) : $query->the_post(); ?>

      <?php

      // Turn off output buffering
      $theResult = ob_get_clean();

      //Return output
      return $theResult;
      }
      // Create shortcode
      add_shortcode('wpb_most_viewed', 'wpb_most_viewed_posts');

      //Enable shortcode execution in text widgets
      add_filter('widget_text', 'do_shortcode');

      Then simply add [wpb_most_viewed] to your desired page/post and it should display your most popular posts.

  24. John says

    Hello, great tutorial but I have one question.
    After following all of the steps the template isn’t paginating. It’s only showing the default 10 posts. Should this happen or is there a way to get it to paginate?

  25. Denis says

    Hello,
    can I do this with comments? I dont use any comments on my site so I could use this comment count to check my most popular page without adding a comment?
    Cheers,
    Denis

  26. Kes says

    I’ve found a number of tuts covering this topic but none seem to spell out where the line goes.

    I’ve tried it inside PHP tags and it breaks the page. If i place it in the HTML it just renders as a comment when you view source and no php is generated.

    Any ideas? I’m w3 total cache and my page views aren’t getting updated

Laisser une réponse

Merci d'avoir choisi de laisser un commentaire. Veuillez garder à l'esprit que tous les commentaires sont modérés selon notre politique de commentaires, et votre adresse e-mail ne sera PAS publiée. Veuillez NE PAS utiliser de mots-clés dans le champ du nom. Ayons une conversation personnelle et significative.