Si vous avez déjà fait défiler au bas de l’un de nos articles, vous avez probablement remarqué notre widget « Populaire sur WPBeginner en ce moment ! ». Cette fonctionnalité a été un succès auprès de nos lecteurs, les aidant à découvrir notre contenu le plus précieux et les encourageant à explorer davantage notre site.
En mettant en avant vos publications de blog WordPress les plus populaires, vous n’aidez pas seulement les lecteurs à trouver votre meilleur contenu – vous stimulez également les métriques d’engagement de votre site. C’est gagnant-gagnant : les internautes obtiennent du contenu de qualité, et vous les gardez sur votre site plus longtemps.
Dans cet article, nous allons voir comment afficher facilement vos publications les plus populaires en fonction de leurs vues dans 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 ! ».
Enfin, afficher vos publications de blog en vogue peut inciter les internautes à rester plus longtemps sur votre site, ce qui augmente le nombre de pages vues et réduit votre taux de rebond.
Plus l’engagement de vos utilisateurs/utilisatrices augmente, plus Google pense que votre contenu est bon et important. À son tour, votre référencement WordPress s’améliore et votre site peut se classer plus haut.
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 :
Méthode 1 : Afficher les publications populaires de WordPress en fonction des vues avec MonsterInsights (Recommandé)
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.
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 « .
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.
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.
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.
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 deuxième option, le widget suivra le CSS du thème de votre site WordPress.
Ensuite, vous pouvez choisir comment le widget doit choisir vos publications les plus populaires. Pour ce tutoriel, choisissez » Personnalisé « , mais vous pouvez également afficher les publications les plus populaires en fonction du nombre de commentaires.
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 « .
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 publication personnalisés.
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.
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.
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 créé 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.
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.
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.
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.
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.
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.
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 :
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, alors vous pouvez y ajouter le widget Articles populaires. C’est ce que nous avons fait dans notre article comment ajouter des publications mises en avant dans votre colonne latérale WordPress.
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.
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.
Confirmez-vous sur votre site pour vérifier si la colonne latérale a l’air correcte.
Voici à quoi ressemble le nôtre :
Si vous souhaitez que le widget Articles populaires apparaisse uniquement sur des pages spécifiques, alors vous pouvez lire notre guide sur la façon d’afficher ou de masquer les widgets sur certaines pages WordPress.
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 ».
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 populaires de WordPress par vues avec du code (plus avancé)
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 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
Après l’activation de l’extension, 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 » + Ajouter un extrait personnalisé « .
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.
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 ».
À 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.
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.
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 :
Conseil d’expert : Si vous souhaitez personnaliser davantage le code mais que vous n’avez pas d’expérience en matière de codage, vous pouvez utiliser le générateur de code AI de WPCode pour vous aider. Cette fonction peut modifier votre code existant pour répondre à vos besoins exacts.
En savoir plus, consultez notre évaluation complète de WPCode.
Tutoriel vidéo
Si vous préférez les instructions visuelles, veuillez regarder la version vidéo de ce tutoriel ci-dessous :
Nous espérons que ce tutoriel WordPress vous a aidé à apprendre comment afficher les publications populaires en fonction des vues. Vous pouvez également consulter notre choix d’experts des meilleures extensions de publications liées pour WordPress et notre article sur ce qui fait une page d’atterrissage à fort taux de conversion.
Si vous avez aimé cet article, veuillez alors vous abonner à notre chaîne YouTube pour obtenir des tutoriels vidéo sur WordPress. Vous pouvez également nous trouver sur Twitter et Facebook.
Mrteesurez
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
MonsterInsights would mot show the view count by default if that is what you want to include with your popular posts.
Administrateur
mohadese esmaeeli
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
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
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.
Moinuddin Waheed
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
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
Jiří Vaněk
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
WPBeginner Support
The code snippets should still work with the most up to date version of WordPress.
Administrateur
Jiří Vaněk
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
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.
Amy Ling
Is there a way to make it so it’s based on user vs in general?
WPBeginner Support
We do not have a recommended method for user specific popular posts at the moment.
Administrateur
Chris
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
While there is a complex way to have that workaround, we do not have a method we would recommend at this time.
Administrateur
thomas
How can I reset the meta keys or reset the counting??
Is there any function?
WPBeginner Support
If you’re using the custom code method, it is saved as a custom field in which case you can edit the count in the edit post area itself. You can see more on custom fields in our guide below:
https://www.wpbeginner.com/wp-tutorials/wordpress-custom-fields-101-tips-tricks-and-hacks/
Administrateur
saikat
yes, very helpful tutorial
WPBeginner Support
Glad our guide was helpful!
Administrateur
Amir
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
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
locas
only 4 posts
I’ve tried to change to 10 but still 4 posts show up
‘posts_per_page’ => 10
WPBeginner Support
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
za
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!
WPBeginner Support
Glad our article could help
Administrateur
Chris
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
Sakshi Grover
This was very helpful.!!! Thanks a ton.!
Amit Biswas
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.
Hans
Thsi thing works greats.
Now I want the columnn in admin to be sortable. any idea how to do this?
many thanks!
Trevor
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?
Shwet
I have the same problem with this code.
Have you found any solution of this?
Fuchel
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.
Maya
How to show most popular posts on my home page?
Shaq
How do I do this for a weekly basis, most viewed posts each week?!
iftkhar hussain
ah , this works fine ;
thanks dear !
Bülent Sakarya
Hello..
Using w3total cache but count not working correctly.
don’t use child theme. how can I fix it?
thanks..
Ryley Ameden
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();
}
Philipp
Is there a possibility to count only unique visitors? Thank you
Zeeshan
Simple Awesome …. (Y)
Erwin Barendregt
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
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
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!
HiepTD
Hello, I am using WP Super Cache.
I do not know how this code works correctly.
Krishna
It is not working for Custom Post Type. Can you help me on this please..
John
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.
Gianmarco
Awesome thanks this is really useful, but a question. Doesn’t it slow down the loading of the page significantly?
ayaz
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.
Md Maruf Adnan Sami
How can i set Features post on Mobilepress Hompage?
Please give me that code.
gift charles
Thank you for this awesome post, you guys are the best
Bojan
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?
Blown
Hi, How can I show the most popular posts for the current week??
Ashish
Awesome Article !! Thanks. Would be better if code was explained in detail.
Dhiraj Kataria
I need advice on how r u to Load Word files to a Wordpress website please. Is there an easy way?
DarkSafka
Sadly this does not work with W3 Total Cache with Page Caching enabled. Coul not get any « fragmented caching » to work either.
Fakrul
Same here @DARKSAFKA . Not working.
Riya
nice code. work perfectly….
hmmm
you are right
REIBI
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
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
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!
Yonatan
Add this code to the query
‘date_query’ => array(
array(
‘after’ => ‘1 week ago’
)
)
Mawardiy
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
Alex
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.
6b
Really great instruction no need of plugin.works perfect.
Paritosh Arya
What table does this custom field get stored into? Is it the posts table or the postmeta?
ScoDal
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.
Marcos
Hello. Huge thanks for that. Works very well in my theme.
John
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?
Varange
Folks, please help. Just cannot figure it out.
How do I change the args to the wp-query to show the most popular posts for the last week? Or month?
Denis
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
Kes
How do i make this work with w3 total cache? I’ve tried the fragment cache suggestion but changes nothing
Kes
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
jarc100
Thanks, this works as charm, but i didn’t get how to use it with the W3 Total Cache.
Jorge
Hello! How can I show the most popular posts for the current week?? Is there any possible? Thanks in advance.