Zliczanie liczby wyświetleń postów bez użycia pluginu w WordPressie
W sieci dostępna jest cała masa różnych pluginów dla WordPressa umożliwiających zliczanie liczby wyświetleń opublikowanych artykułów. Na pewno każdy kto prowadzi bądź prowadził stronę internetową opartą o WordPressa zetknąć się z taką wtyczką. Są jednak lepsze sposoby na rozwiązanie tego problemu…

Poza instalacją n-tego pluginu możemy na przykład nieco zmodyfikować kod naszego szablonu i dodać automatyczne zliczanie liczby odsłon postów z poziomu PHP. Dane te będziemy przechowywać w tak zwanych meta danych poszczególnych artykułów.
Modyfikacji wymagać będą pliki function.php oraz single.php (znajdują się one w katalogu wp-content/themes/nazwa_szablonu).
Do pliku function.php musimy dopisać następujące funkcje:
//Post views count
//Note: Function does not work with plugins such as WP Super Cache or W3 Total Cache.
function countPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count == '') {
$count = 1;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '1');
} else {
$count++;
update_post_meta($postID, $count_key, $count);
}
}Natomiast w pliku single.php musimy uruchomić licznik odsłon:
countPostViews(get_the_ID());
Dane dotyczące liczby odsłon danego wpisu możemy wyświetlić tak:
global $post; echo get_post_meta($post->ID, 'post_views_count', true);
Informacje te można również wykorzystać w widgecie z najpopularniejszymi postami.
UWAGA: Powyższa metoda może dawać niepoprawne wyniki przy włączonym „agresywnym cachowaniu” za pośrednictwem wtyczek takich jak: WP Super Cache lub W3 Total Cache.