Czy chcesz wyświetlać popularne wpisy na podstawie ich zobacz w WordPress?
Pokazując twoje najpopularniejsze wpisy na blogu WordPress, możesz pomóc czytelnikom znaleźć najlepsze i najbardziej wartościowe treści. Ponadto może to zachęcić ich do pozostania dłużej na twojej witrynie internetowej.
W tym artykule pokażemy, jak wyświetlić twoje popularne wpisy według zobacz w WordPress.
Dlaczego warto wyświetlać popularne wpisy według wyświetleń w WordPress?
Gdy użytkownicy zobaczą twoje najpopularniejsze wpisy na blogu WordPress, mogą dowiedzieć się, jakie treści najbardziej lubią ich koledzy. W ten sposób mogą sprawdzić te artykuły i dołączyć do rozmowy.
Co więcej, wyświetlanie twoich najpopularniejszych treści w WordPressie może zwiększyć twój dowód społeczny. To tak, jakby powiedzieć nowym użytkownikom, że „Hej, inni ludzie uznali te wpisy za bardzo pomocne i ty też możesz!”.
Wreszcie, wyświetlanie wpisów na twoim blogu, które cieszą się popularnością, może sprawić, że ludzie pozostaną dłużej na twojej witrynie internetowej, zwiększając liczbę odsłon i zmniejszając współczynnik odrzuceń.
Im bardziej rośnie zaangażowanie Twoich użytkowników, tym bardziej Google uważa Twoje treści za dobre i ważne. Z kolei WordPress SEO poprawia się, a twoja witryna może zajmować wyższe pozycje w rankingu.
Niestety, WordPress nie ma wbudowanej funkcji ani bloku do wyświetlania twoich najpopularniejszych wpisów według wyświetleń strony. W tym przewodniku pokażemy, jak to zrobić za pomocą wtyczki i kodu.
Wystarczy kliknąć jeden z poniższych odnośników, aby przejść bezpośrednio do Twojej preferowanej metody:
Film instruktażowy
Jeśli wolisz pisemne instrukcje, czytaj dalej.
Metoda 1: Wyświetlanie popularnych wpisów na WordPressie według wyświetleń za pomocą MonsterInsights
Najprostszym sposobem na wyświetlenie popularnych wpisów według zobacz w WordPress jest wtyczka. W rzeczywistości dostępnych jest wiele popularnych wpisów WordPress, ale naszym zdaniem najlepszym wyborem jest MonsterInsights.
Używany przez ponad 3 miliony witryn internetowych na całym świecie, MonsterInsights jest najlepszą wtyczką Google Analytics dla WordPress. Chociaż jej główną funkcją jest analityka, posiada ona również przyjazną dla użytkownika funkcję wyświetlania twoich najpopularniejszych wpisów.
Po pierwsze, musisz zainstalować wtyczkę MonsterInsights i połączyć ją z twoim kontem Google Analytics. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem krok po kroku, jak zainstalować Google Analytics w WordPress dla początkujących.
Uwaga: Chociaż dostępna jest darmowa wersja MonsterInsights, będziemy korzystać z wersji Pro, ponieważ zawiera ona funkcję popularnych wpisów.
Wybór motywuwidżetu popularnych wpisów
Po włączaniu i skonfigurowaniu wtyczki, przejdź do Insights ” Popular Posts z kokpitu WordPress. Następnie kliknij pozycję menu „Widżet popularnych wpisów”.
Przewijając w dół, należy wybrać motyw do wyświetlania widżetu popularnych wpisów. Dostępne są różne opcje.
Niektóre zawierają obrazek wyróż niający wpis, podczas gdy inne są bardziej minimalistyczne.
Jeśli chcesz zobaczyć, jak wygląda twój motyw przed dokonaniem wyboru, po prostu przejdź w dół strony do sekcji Podgląd motywu.
Możesz również wyświetlić podgląd motywu w formacie Wide lub Narrow. W przypadku formatu Wide twoje wpisy będą wyświetlane pod treścią strony lub wpisu, podczas gdy format Narrow wyświetla wpisy po prawej stronie, jak panel boczny.
Następnie przewińmy w dół do sekcji „Dostosuj wygląd”. Tutaj możesz zmodyfikować kolory motywu, wielkość liter, układ i liczbę wpisów do wyświetlenia.
Opcje konfiguratora mogą się różnić w zależności od używanego motywu. Warto więc zapoznać się z różnymi motywami, aby wybrać ten, który najbardziej Ci odpowiada.
Konfiguracja zachowania widżetu popularnych wpisów
Po skonfigurowaniu wyglądu motywu należy przejść do sekcji Zachowanie. To tutaj będziesz kontrolować sposób wyświetlania widżetu popularnych wpisów na twojej witrynie internetowej WordPress.
W ustawieniach stylizacji widżetu możesz wybrać użycie projektu, który stworzyłeś powyżej lub zdecydować się nie stylizować widżetu w ogóle. W przypadku drugiej opcji widżet będzie zgodny z CSS twojego motywu witryny WordPress.
Następnie możesz wybrać sposób, w jaki widżet ma wybierać twoje najpopularniejsze wpisy. W tym poradniku wybraliśmy opcję „Curated”, ale możemy również wyświetlić najpopularniejsze wpisy na podstawie liczby komentarzy.
Następnie należy włączyć opcję „Dodaj 5 najlepszych wpisów z Google Analytics” poniżej. Ale zanim to zrobisz, będziesz potrzebował MonsterInsights Dimensions Add-On i wpisu typu treści jako nowego konfiguratora.
Pozwoli to MonsterInsights wybrać najpopularniejsze wpisy na podstawie danych Google Analytics.
W tym celu należy pobrać dodatek MonsterInsights Dimensions i zainstalować go jako wtyczkę w systemie WordPress. Aby uzyskać instrukcje krok po kroku, zapoznaj się z naszym przewodnikiem na temat instalacji wtyczki WordPress.
Następnie przejdź do sekcji Insights „ Settings i przejdź do karty „Conversions”. Następnie kliknij „Utwórz nowy konfigurator”.
Gdy już to zrobisz, wybierz „Typ treści” z rozwijanego menu.
Włączy to MonsterInsights do śledzenia wydajności twoich wpisów na blogu i innych niestandardowych typów treści.
Teraz wystarczy wrócić do Insights ” Popularne wpisy i przejść do „Widżetu popularnych wpisów”.
Wystarczy włączanie przycisku „Dodaj 5 najlepszych wpisów z Google Analytics”. Następnie kliknij przycisk „Testuj zautomatyzowane wpisy”, aby sprawdzić, czy konfiguracja przebiegła pomyślnie.
Jeśli tak, pojawi się komunikat o powodzeniu.
Powinno być napisane: „Dane popularnych wpisów mogą być pobierane poprawnie. Uwaga: w zależności od tego, kiedy skonfigurowano ustawienia własnych wymiarów, wczytywanie odpowiednich danych popularnych wpisów z Google Analytics może potrwać do 7 dni”.
Przechodząc do kolejnych kroków, możesz teraz dodać tytuł, który pojawi się nad widżetem. Może to być coś w stylu „Sprawdź nasze najpopularniejsze wpisy” lub coś podobnego.
Poniżej można wybrać, czy widżet ma być wyświetlany we wszystkich typach treści, być wykluczony z określonych wpisów i/lub pojawiać się tylko w niektórych kategoriach postów.
Te ustawienia są przydatne, jeśli utworzyłeś własne typy treści inne niż wpisy na blogu i czujesz, że widżet popularnych wpisów będzie tam wyglądał nieistotnie.
Jednym z ostatnich kroków jest osadzanie widżetu popularnych wpisów. Istnieje kilka opcji: umieszczenie go automatycznie, użycie bloku Gutenberg, dodanie go jako panelu bocznego lub użycie krótkiego kodu.
Przeanalizujmy każdą opcję po kolei.
Automatyczne osadzanie widżetu popularnych wpisów
Automatyczne umieszczanie jest zalecane, jeśli chcesz, aby widżet pojawiał się we wszystkich wpisach, które pasują do ustawień Zachowania, które ustawiłeś wcześniej.
W tym celu wystarczy włączyć przycisk Automatyczne umieszczanie.
Wadą tej opcji jest to, że nie można dostosować wyglądu widżetu w oparciu o to, co najlepiej wygląda na wpisie lub stronie. Jeśli potrzebujesz tego rodzaju funkcjonalności, możesz wypróbować następną metodę.
Osadzanie bloku popularnych wpisów na stronie lub wpisie
Jeśli chcesz mieć większą kontrolę nad wyglądem widżetu na stronie lub we wpisie, ta metoda jest dla Ciebie.
Najpierw przejdź do edytora bloków wpisu lub strony, na której chcesz umieścić widżet. Następnie kliknij przycisk dodawania bloku „+” w dowolnym miejscu edytora i poszukaj bloku Popularne wpisy.
W panelu ustawień bloku znajdują się opcje zmiany motywu widżetu, wielkości liter, kolorów, tytułu, układu i liczby wpisów.
Ustawienia te są podobne do tych, które widzieliśmy we wtyczce MonsterInsights.
Jedyną różnicą jest to, że nie można zmienić wpisów, które zostaną wybrane w widżecie.
W ustawieniach zachowania można jednak wyświetlać wpisy tylko z określonych kategorii. W ten sposób możesz sprawić, że wybór popularnych wpisów będzie bardziej dostosowany do twoich potrzeb.
Gdy będziesz zadowolony z ustawień bloków, po prostu kliknij przycisk „Aktualizuj” w edytorze wpisów i stron.
Oto jak wygląda blok popularnych wpisów na naszej testowej witrynie internetowej:
Osadzanie widżetu popularnych wpisów w panelu bocznym
Jeśli korzystasz z nieblokującego motywu WordPress, który ma panel boczny z widżetami, możesz dodać do niego widżet Popularne wpisy. To właśnie zrobiliśmy w naszym artykule na temat dodawania wpisów z funkcjami do twojego panelu bocznego WordPress.
Wszystko, co musisz zrobić, to przejść do Wygląd ” Widżety. Następnie kliknij przycisk „+” dodaj widżet w panelu bocznym i poszukaj widżetu Popularne wpisy – MonsterInsights.
Podobnie jak w poprzedniej metodzie, widżet zawiera podobne ustawienia umożliwiające dostosowanie wyglądu twojego motywu.
Różnica polega na tym, że interfejs jest nieco trudniejszy w użyciu. Podczas zmiany ustawień nie można zobaczyć, jak faktycznie wygląda widżet. Będziesz musiał kliknąć inny widżet lub inny obszar, aby go podglądnąć.
Jeśli jesteś zadowolony z wyglądu widżetu, po prostu kliknij „Aktualizuj” w prawym górnym rogu.
Upewnij się, że wszedłeś na swoją witrynę internetową, aby sprawdzić, czy panel boczny wygląda prawidłowo.
Oto jak wygląda nasz:
Jeśli chcesz, aby widżet Popularne wpisy pojawiał się tylko na określonych stronach, możesz przeczytać nasz przewodnik na temat pokazywania lub ukrywania widżetów na określonych stronach WordPress.
Osadzanie widżetu popularnych wpisów za pomocą krótkiego kodu
Ostatnią opcją jest użycie krótkiego kodu. Ta metoda jest zalecana, jeśli powyższe opcje nie działają w twoim konkretnym przypadku użycia.
W karcie widżetu Popularne wpisy przewiń w dół do sekcji „Opcje osadzania”. Następnie wybierz opcję „Wyświetl za pomocą krótkiego kodu” i kliknij przycisk „Kopiuj krótki kod”.
Następnie wystarczy umieścić krótki kod w dowolnym miejscu. Aby uzyskać więcej informacji, zapoznaj się z naszym przewodnikiem na temat dodawania krótkich kodów w WordPress.
Metoda 2: Wyświetlanie popularnych wpisów WordPress według zobaczonego kodu
Metoda MonsterInsights to najprostszy sposób na wyświetlenie twojej najpopularniejszej i najlepszej treści według zobacz w WordPress. Ale jeśli czujesz się komfortowo z kodowaniem, możesz również użyć kodu, aby wyświetlić twoje najpopularniejsze wpisy WordPress.
W przypadku tej metody zalecamy użycie wtyczki do fragmentów kodu, takiej jak WPCode, której użyjemy w tym przewodniku.
WPCode umożliwia bezpieczne wstawienie własnego kodu bez bezpośredniej interakcji z twoimi plikami WordPress. Ponadto, ponieważ ta metoda wymaga użycia wielu fragmentów kodu, wtyczka znacznie ułatwi zarządzanie i śledzenie ich wszystkich.
Najpierw należy zainstalować WPCode w WordPressie. Dostępna jest darmowa wersja WPCode, ale my skorzystamy z wersji Pro, ponieważ zawiera ona funkcje potrzebne do wstawienia kodu w odpowiednich miejscach.
Aby uzyskać przewodnik instalacji krok po kroku, przeczytaj nasz artykuł o tym, jak zainstalować wtyczkę WordPress.
Dodanie funkcji licznika wpisów w WordPressie
Po włączaniu wtyczki należy przejść do Code Snippets ” + Add Snippet z kokpitu. Następnie najedź kursorem na „Add Your Custom Code (New Snippet)” i kliknij „Use snippet”.
Teraz znajdujesz się w edytorze fragmentów kodu WPCode. Zanim wstawisz jakikolwiek kod, dodaj tytuł fragmentu kodu.
W przypadku tego pierwszego kodu możesz nazwać go czymś w rodzaju „WordPress Post Views Counter Function”. Wynika to z faktu, że celem tego pierwszego kodu jest utworzenie funkcji do zliczania wpisów w WordPressie.
Następnie zmień fragment kodu na „PHP Snippet”. Zauważ, że każdy fragment kodu, który będziesz musiał dodać z tego artykułu, jest w PHP.
Następnie możesz skopiować i wkleić poniższy kod:
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);
Teraz wystarczy przewinąć w dół do sekcji „Wstawianie” i wybrać „Wstaw automatycznie” dla metody wstawiania i „Uruchom wszędzie” dla lokalizacji. Działa to tak samo, jak wstawienie kodu do pliku functions.php twojego motywu.
Następnie przejdź do prawego górnego rogu strony i włącz kod.
Następnie kliknij „Zapisz fragment kodu”.
Na tym etapie musisz dodać kolejny nowy niestandardowy fragment kodu. Możesz nazwać go „Wywołanie funkcji śledzenia wpisów zobacz”.
Ten kod wywoła powyższą funkcję i włączy ją na twoich stronach z pojedynczymi wpisami.
Gdy już to zrobisz, skopiuj i wklej poniższy fragment kodu:
wpb_set_post_views(get_the_ID());
Zamierzasz wybrać lokalizację „Wstaw po wpisie”, ponieważ ma ona działać na twoich stronach z pojedynczymi wpisami.
Po zakończeniu wystarczy włączyć kod i zapisać go.
Wstawienie haka do śledzenia widoków wpisów w WordPressie
Teraz należy utworzyć nowy fragment kodu, który sprawdzi, czy obecna strona jest pojedynczym wpisem. Jeśli tak, wywoła funkcję WordPress Post Views Counter, aby śledzić i aktualizować liczbę wyświetleń wpisu.
W ten sposób za każdym razem, gdy użytkownik przejdzie na wpis, jego liczba wyświetleń zostanie zaktualizowana.
Nazwijmy ten fragment kodu „WordPress Post Views Tracking Hook”. Następnie wstaw następujące linie kodu:
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');
Można wybrać metodę wstawienia jako „Auto Insert” i lokalizację jako „Frontend Only”.
Tak samo jak w poprzednich krokach, po prostu włącz kod i zapisz fragment kodu.
Uwaga: Jeśli korzystasz z pamięci podręcznej wtyczki, ta technika może nie działać domyślnie. Możesz użyć funkcji buforowania fragmentów, która jest oferowana przez niektóre wtyczki buforujące, takie jak W3 Total Cache.
Dodanie funkcji pobierania liczby wyświetleń wpisów i wyświetlania najpopularniejszych wpisów z liczbą wyświetleń
Jesteśmy teraz w ostatnich krokach tego przewodnika. Musisz dodać fragment kodu, który pobiera i formatuje liczbę wyświetleń danego wpisu WordPress. Przyda się to później podczas wyświetlania listy najczęściej zobaczonych wpisów.
Możesz nazwać ten kod jako „Retrieve Post Views Count Function” i ustawić lokalizację na „Run Everywhere”.
Oto fragment kodu:
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';
}
Ponownie, upewnij się, że kod jest włączony w WPCode i zapisz go po zakończeniu.
Gdy to zrobisz, ponownie utwórz nowy fragment kodu i nazwij go „Wyświetl najpopularniejsze wpisy z liczbą wyświetleń”. Jest to kod, który wyświetli twoje najpopularniejsze wpisy na dole wpisów na blogu.
W oknie podglądu kodu wstaw poniższy fragment kodu:
// 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();
Jak zaznaczono w kodzie, możesz swobodnie dostosować liczbę wpisów do wyświetlenia i dostosować tytuł tej sekcji.
W sekcji Wstawianie WPCode upewnij się, że wybrałeś „Wstaw po wpisie” dla Lokalizacji. Następnie wystarczy włączyć kod i zapisać fragment kodu.
Teraz pozostaje tylko przejść na jeden z twoich wpisów na blogu i sprawdzić, czy kod działa. Oto jak wyglądają najpopularniejsze wpisy według sekcji zobacz na naszym testowym blogu WordPress:
Porada eksperta: Aby sprawdzić, czy twój kod działa bez trwałej zmiany witryny, możesz wypróbować tryb testowy WPCode.
Ta funkcja pozwala dodawać twoje kody jak zwykle i tylko ty możesz zobaczyć, jak wyglądają na front-endzie. Z drugiej strony, twoi użytkownicy będą wchodzić w interakcje z twoją witryną internetową w normalny sposób.
Mamy nadzieję, że ten poradnik WordPress pomógł ci dowiedzieć się, jak wyświetlać popularne wpisy według zobacz. Możesz również zapoznać się z naszą ekspercką listą najlepszych wpisów powiązanych z wtyczkami do WordPressa i naszym artykułem na temat tego, co sprawia, że strona docelowa ma wysoką konwersję.
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!
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.
Administrator
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.
Administrator
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.
Administrator
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.
Administrator
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.
Administrator
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.
Administrator
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/
Administrator
saikat
yes, very helpful tutorial
WPBeginner Support
Glad our guide was helpful!
Administrator
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.
Administrator
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
Administrator
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
Administrator
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.