Đếm xem số lượt người đã xem qua bài viết của mình trên WP xem tưởng như là một việc đơn giản, nhưng mà lại cũng khá khó khăn với một số bạn.
Việc đếm số người xem bài viết thì các bạn có thể sử dụng plug-in WP-Postviews, tuy nhiên, mình đã thử mọi cách tuy nhiên nó không hoạt động, nó cứ hiển thị 0 Views.

Và mình đã tìm ra một cách khác để đếm số lượt xem bài viết mà không cần dùng bất kì plug-in nào cả, các bạn có thể làm theo các bước phía dưới là được.
Đầu tiên, bạn mở file functions.php ra và thêm vào đoạn code sau.
function getPostViews($postID){ // hàm này dùng để lấy số người đã xem qua bài viết $count_key = 'post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count==''){ // Nếu như lượt xem không có delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); return "0"; // giá trị trả về bằng 0 } return $count; // Trả về giá trị lượt xem } function setPostViews($postID) {// hàm này dùng để set và update số lượt người xem bài viết. $count_key = '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++; // cộng đồn view update_post_meta($postID, $count_key, $count); // update count } }
Sau khi đã có 2 hàm trên thì việc còn lại là chúng ta gọi 2 hàm đó để sử dụng thôi.
Trước tiên, để có được lượt view thì bạn cần để function setPostViews() trong file single.php và nó phải nằm trong vòng lập while.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> <?php setPostViews(get_the_ID()); ?> <!-- set và update lại lượt views--> <?php the_title(); ?> <!-- Title bài viết --> <?php the_content(); ?> <!--/ Nội dung bài viết--> <?php endwhile; endif; ?>
Còn hàm getPostViews() thì chúng ta có thể để nó ở mọi nơi như index.php, category.php, single.php… để nó hiển thị số lượt xem bài viết, và tất nhiên là nó phải nằm trong vòng while.
<?php if (have_posts()) : while (have_posts()) : the_post(); ?> Lượt xem: <?php getPostViews(get_the_ID()); ?> lượt <!-- lấy thông tin lược views--> <?php the_title(); ?> <!-- Title bài viết--> <?php the_content(); ?> <!-- Nội dung bài viết--> <?php endwhile; endif; ?>
Vậy là với vài thao tác đơn giản, chúng ta có thể tạo ra được 1 ứng dụng nho nhỏ cho WP, và tất nhiên là không cần phải dùng plug-in nào hết. Chúc các bạn vui vẻ với bài viết.