Vill du visa populära posts baserat på deras views i WordPress?
Genom att visa dina mest populära blogginlägg i WordPress kan du hjälpa läsarna att hitta ditt bästa och mest värdefulla content. Dessutom kan det uppmuntra dem att stanna längre på din website.
I den här artikeln visar vi you hur du visar dina populära posts efter views i WordPress.
Varför visa populära posts efter views i WordPress?
När användare ser dina mest populära blogginlägg på WordPress kan de upptäcka vilket content som deras medläsare gillar mest. På så sätt kan de kontrollera dessa artiklar och delta i konversationen.
Dessutom kan du öka ditt sociala bevis genom att displayed ditt mest populära content i WordPress. Det gillar att berätta för nya användare att ”Hej, andra människor har hittat dessa poster riktigt användbara, och du kanske också gör det!”
Slutligen kan visning av trendande blogginlägg få människor att stanna längre på din website, vilket ökar antalet sidvisningar och minskar avvisningsfrekvensen.
Ju mer engagemanget från användarna ökar, desto mer tycker Google att ditt content är bra och viktigt. I sin tur förbättras din WordPress sökmotorsoptimering och din site kan rankas högre.
Tyvärr har WordPress inte en built-in funktion eller block för att displayed your most popular posts by page views. I den här guiden visar vi dig hur du gör exakt det med ett plugin och med kod.
Klicka bara på en av de snabba links under för att hoppa direkt till din önskade metod:
Video Tutorial
Om du föredrar skriftliga instruktioner är det bara att fortsätta läsa.
Metod 1: Display Popular WordPress Posts by Views med MonsterInsights
Det enklaste sättet att displaya populära posts efter views i WordPress är med ett plugin. Det finns faktiskt många tillägg för populära posts i WordPress available, men enligt vår mening är MonsterInsights det bästa valet.
MonsterInsights används av 3 miljoner+ websites över hela världen och är det bästa Google Analytics-tillägget för WordPress. Även om dess huvudfunktion är analys, har det också en användarvänlig funktion för att visa dina mest populära posts.
Först och främst måste du installera pluginet MonsterInsights och ansluta det till ditt Google Analytics account. För mer detaljer, se vår Step-by-Step guide om hur man installerar Google Analytics i WordPress för nybörjare.
Note: Även om en gratis version av MonsterInsights är available, kommer vi att använda Pro-versionen eftersom den innehåller funktionen för populära inlägg.
Välj ett tema förwidgetar för populära poster
När du har aktiverat och konfigurerat pluginet går du till Insights ” Popular Posts från WordPress dashpanel. Klicka sedan på menu-item ”Popular Posts Widget”.
När du rullar ner måste du selecta ett theme för att visa widgeten för populära posts. Det finns olika alternativ.
Vissa inkluderar en featured image för inlägget, medan andra ser mer minimalistiska ut.
Om du vill se hur temat gillar att se ut innan du gör ditt val, flytta bara ner på sidan till Theme Preview section.
Du kan också previewa temat i ett brett eller smalt format. Med det breda formatet ser du dina inlägg listade under sidans eller inläggets content, medan det smala formatet visar inläggen på höger sida av det, gillar en sidebar.
Låt oss sedan rulla ner till ”Customize Design” -sektionen. Här kan du ändra temats färger, fontstorlek, layout och antal post som ska visas.
Alternativen för customize här kan variera beroende på vilket theme du använder. Så se till att utforska de olika temana för att se vilket som passar dig bäst.
Konfigurera beteendet för widgetar för populära poster
När du har konfigurerat temats design måste du gå till Behavior section. Det är här du kommer att kontrollera hur widgeten för populära posts kommer att visas på din WordPress website.
I inställningarna för Widget Styling kan du välja att använda den design som du har gjort ovan eller ej styla widgeten alls. Med det andra alternativet kommer widgeten att följa din WordPress site theme’s CSS.
Sedan kan du välja hur widgeten ska välja dina mest populära posts. För denna tutorial väljer du ”Curated”, men du kan också visa de mest populära posterna baserat på antalet kommentarer.
Vad du måste göra härnäst är att aktivera alternativet ”Add Top 5 Posts from Google Analytics” under. Men innan du gör det behöver du MonsterInsights Dimensions Add-On och lägga till Post type som en new custom dimension.
Detta kommer att låta MonsterInsights välja de mest populära posterna baserat på Google Analytics-data.
För att göra detta måste du downloada MonsterInsights Dimensions-utökningen och installera den som ett plugin i WordPress. För Step-by-Step instruktioner, kontrollera vår guide om hur du installerar ett WordPress plugin.
Gå sedan till Insights ” Settings och växla till tabben ”Conversions”. Efter det klickar du på ”Add New Custom Dimensions.
När du har gjort det väljer du ”Post type” i dropdown-menyn.
Detta kommer att aktivera MonsterInsights för att spåra prestanda för dina blogginlägg och andra custom post types.
Nu är det bara att gå tillbaka till Insikter ” Populära inlägg och gå till ”Widgetar för populära inlägg.
Aktivera helt enkelt knappen ”Add Top 5 Posts from Google Analytics”. Klicka sedan på ”Test Automated Posts” för att se om installationen var utan problem.
Om ja, kommer du att se ett success message popup.
Det ska stå: ”Data för Popular Posts kan hämtas korrekt. Obs/observervera: beroende på när du konfigurerade inställningarna för Custom Dimensions kan det ta upp till 7 dagar innan relevanta data för Popular Posts hämtar från Google Analytics.
Om du går vidare till nästa steg kan du nu add to en rubrik som kommer att visas ovanför widgeten. Det kan vara något som gillar ”Kolla in våra mest populära post” eller något liknande.
Under det kan du välja om widgeten ska visas i alla post typer, uteslutas från specifika inlägg och/eller endast visas i vissa inläggskategorier.
Dessa Settings är användbara om du har skapat andra custom post types än blogginlägg och tycker att widgetarna för populära inlägg gillar att se irrelevanta ut där.
Ett av de sista stegen är att embedda widgeten för populära posts. Det finns flera alternativ: placera den automatiskt, använda ett Gutenberg block, lägga till den som en sidebar widget eller använda en shortcode.
Låt oss gå igenom varje alternativ ett efter ett.
Embed widgeten Popular Posts automatiskt
Automatisk placering rekommenderas om du vill att widgeten ska visas på alla posts som matchar de beteendeinställningar som du har ställt in föregående inlägg.
För detta behöver du bara aktivera knappen Automatic Placement.
Nackdelen med det här alternativet är att du inte kan justera widgets design baserat på vad som ser bäst ut på posten eller sidan. Om du behöver den här typen av funktionalitet kan du prova nästa metod.
Embed the Popular Posts Block till en page eller post
Om du vill ha mer control över hur widgeten ser ut på en page eller post, då är den här metoden något för dig.
Gå först till block editor för det post eller den page där du vill att widgeten ska vara. Därefter klickar du på knappen ”+” add block var som helst i editorn och letar efter blocket Popular Posts.
I panelen Block settings ser du att det finns alternativ för att ändra widgets tema, fontstorlek, färger, titel, layout och antal post.
Dessa settings liknar dem vi har sett i tillägget MonsterInsights.
Den enda skillnaden är att du inte kan ändra vilka posts som väljs i widgeten.
Med det sagt är det i Behavior Settings möjligt att bara visa posts från vissa kategorier. På så sätt kan du göra de populära posterna mer skräddarsydda efter dina behov.
När du är nöjd med blockinställningarna klickar du bara på knappen ”Update” i post och page editor.
Så här gillar blocket Popular Posts på vår testwebbplats:
Embed widgeten Popular Posts Widget i en sidebar
Om du använder ett icke-block WordPress theme som har ett widget-ready sidebar area, då kan du add to Popular Posts widget till det. Det här är vad vi gjorde i vår artikel om hur du lägger till utvalda inlägg i ditt sidebar i WordPress.
Allt du behöver göra är att gå till Appearance ” Widgets. Klicka sedan på knappen ’+’ add widget i sidebar area och leta efter widgeten Popular Posts – MonsterInsights.
Likes i den tidigare metoden innehåller widgeten liknande inställningar för att customize ditt temas appearance.
Det som är annorlunda är att gränssnittet är lite svårare att använda. När du ändrar settings kan du inte se hur widgeten faktiskt gillar att se ut. Du måste clicka på en annan widget eller ett annat area för att få preview på den.
Om du är nöjd med hur widgeten ser ut klickar du bara på ”Update” högst upp i högra hörnet.
Se till att gå till din website för att kontrollera om sidebaren ser rätt ut.
Så här gillar vi vår:
Om du vill att widgeten Popular Posts bara ska visas på vissa sidor kan du läsa vår guide om hur du visar eller döljer widgetar på vissa sidor i WordPress.
Embed den populära Posts Widget med en Shortcode
Det sista alternativet är att använda en shortcode. Denna metod rekommenderas om alternativen ovan inte fungerar för ditt specifika användningsfall.
I Popular Posts Widget tabs, rulla all the way down to the ”Embed Options” section. Välj sedan ”Display using a Shortcode” och klicka på knappen ”Copy Shortcode”.
Efter det är det bara att placera shortcoden där du gillar den. För mer information, kontrollera vår guide om hur du lägger till shortcodes i WordPress.
Metod 2: Display Popular WordPress Posts by Views med kod
Metoden MonsterInsights är det enklaste sättet att displayed your mest populära och bästa content efter views i WordPress. Men om du är bekväm med kodning kan du också använda kod för att visa dina mest populära WordPress-poster.
För den här metoden rekommenderar vi att du använder ett code snippets plugin som WPCode, vilket är vad vi kommer att använda i den här guiden.
WPCode gör det säkert att infoga custom code utan att direkt interagera med dina WordPress-filer. Dessutom, eftersom denna metod är obligatorisk för att använda flera code snippets, kommer pluginet att göra hanteringen och trackingen av dem all mycket enklare.
Först måste du installera WPCode i WordPress. En gratis version av WPCode finns tillgänglig, men vi kommer att använda Pro-versionen, eftersom den innehåller de funktioner vi behöver för att insert koden på rätt locations.
För en Step-by-Step installationsguide, läs vår artikel om hur du installerar ett WordPress plugin.
Add to WordPress Post Views Counter-funktion
När pluginet är aktiverat måste du gå till Code Snippets ” + Add Snippet från instrumentpanelen. Sedan hoverar du över ”Add Your Custom Code (New Snippet)” och klickar på ”Use snippet”.
Nu är du inne i WPCode code snippet editor. Innan du infogar någon kod, gå vidare och lägg till en titel för snippet.
För den här första koden kan du namnge den något som gillar ”WordPress Post Views Counter Function. Detta beror på att syftet med denna första kod är att skapa en funktion för att räkna post views i WordPress.
Ändra sedan Code Type till ”PHP Snippet”. Obs/observera att alla code snippets som du kommer att behöva add to från den här artikeln är i PHP.
Följaktligen kan du kopiera och paste in följande kod under:
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);
Nu rullar du bara ner till ”Insertion” section och väljer ”Auto Insert” för Insert Method och ”Run Everywhere” för Location. Detta fungerar på samma sätt som att inserta koden i functions.php-filen i ditt theme.
Därefter navigerar du till den övre högra sidan av page och gör koden aktiv.
Klicka sedan på ”Save Snippet”.
I detta skede måste du lägga till ett annat nytt anpassat code snippet. Du kan namnge den här ”Track Post Views Function Call.
Denna kod kommer att anropa funktionen ovan och aktivera den på dina sidor med enskilda inlägg.
När du har gjort det kopierar och klistrar du in följande snippet:
wpb_set_post_views(get_the_ID());
Det som är annorlunda med det här code snippet är att du väljer location ”Insert After Post” eftersom det är tänkt att run på dina sidor med enskilda inlägg.
När du är klar är det bara att göra koden aktiv och save den.
Infoga WordPress Post Views åtgärds-hook för tracking
Nu måste du lägga till ett nytt code snippet som kontrollerar om den aktuella page är ett enskilt inlägg. Om så är fallet kommer den att anropa WordPress Post Views Counter-funktion för att spåra och updating postens view count.
På så sätt kommer antalet views att updates varje gång en användare besöker posten.
Låt oss namnge detta snippet ”WordPress Post Views Tracking Hook. Infoga sedan följande rader med kod:
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');
You can choose the insert method as ’Auto Insert’ and the location as ’Front-end Only’.
Samma sak som i föregående steg, bara gå vidare och aktivera koden och spara snippet.
Note: Om du använder ett plugin för caching kanske den här tekniken inte fungerar som standard. Du kan använda funktionen för fragmentcaching som erbjuds av vissa tillägg för caching som W3 Total Cache för att få det att fungera.
Add Functions to Retrieve Post Views Count och Display Most Popular Posts With View Counts
Vi är nu inne på de sista stegen i den här guiden. Du måste add a code snippet som hämtar och formaterar antalet views för ett visst WordPress post. Detta kommer att vara praktiskt senare när du visar listan över de mest visade posterna.
Du kan namnge den här koden som ’Retrieve Post Views Count Function’ och ställa in platsen till ’Run Everywhere’.
Här är code snippet:
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';
}
Återigen, se till att göra koden aktiv i WPCode och spara den efteråt.
När du har gjort det skapar du ett nytt code snippet igen och döper det till ”Display Most Popular Posts with View Counts. Det här är koden som visar dina mest populära inlägg längst ner i dina blogginlägg.
I boxen Code Preview insertar du följande snippet:
// 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();
Som noterat i koden kan du gratis justera antalet posts som ska visas och customize titeln för denna section.
I WPCode Insertion section, se till att välja ”Insert After Post” för Location. Sedan gör du bara koden aktiv och sparar snippet.
Allt som återstår att göra nu är att besöka ett av dina blogginlägg och se om koden fungerar. Så här gillar de mest populära posterna efter views section på vår test WordPress blogg:
Expert tips: För att se om din kod fungerar utan att permanently ändra din site, kan du prova WPCode’s Testing Mode.
Denna funktion låter dig lägga till dina koder som vanligt och bara du kan se hur de ser ut på front end. Å andra sidan kommer dina användare att interagera med din website som vanligt.
Vi hoppas att denna WordPress tutorial hjälpte dig att lära dig hur du visar populära posts efter views. Du kanske också vill kontrollera vårt expertval av de bästa tillägg för relaterade inlägg för WordPress och vår artikel om vad som gör en högkonverterande landing page.
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.
Syed Balkhi
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!
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.
Administratör
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.
Administratör
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.
Administratör
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.
Administratör
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.
Administratör
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/
Administratör
saikat
yes, very helpful tutorial
WPBeginner Support
Glad our guide was helpful!
Administratör
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.
Administratör
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
Administratör
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
Administratör
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.
Bigdragon13th
Hello,
I’m using this code for months and it’s works great! That’s before I start using W3 Total cache and the code stop counting view for me.
I struck at where and how do I need to put the mfunc code. Can you point that out for me?
FYI, I put all of the codes in site-specific plugin.