Hiển thị lượt view của bài viết wordpress

Quảng cáo
Ads_ngang
Website dinhthuanit.com có bài Hiển thị lượt view của bài viết wordpress

Trong bài này mình sẽ chỉ dẫn bạn theo dấu và hiển thị số lượng views của bài viết. Cơ chế là +1 view khi truy cập chi tiết vào bài viết (single). Có nhiều cách sử lý cộng view khi người dùng xem bài viết. Bạn có thể thiết lập mỗi IP chỉ cộng+1 view trong ngày, có nghĩa nếu cùng IP đó truy cập nhiều đợt vào một bài viết thì chỉ tính 1 view của IP đó trong ngày mà thôi, đến ngày xong thì mở lại. Phần này bạn tự code thêm vào plugin.

Đầu tiên chúng ta sử dụng plugin hiển thị view cho post đó là WP-PostViews.

Cách sử dụng WP-PostViews

Sau khi tải plugin tạo post view xong, bạn kích hoạt plugin. Rồi vào WP-Admin-> settings-> postviews để cấu hình thêm hoặc sử dụng mặc định.
wp post views wordpress

Để Cấu hình plugins, bạn vào Settings-> PostViews.

  • Count Views Form : giới hạn registered-user/anonymous cấp phép hiển thị views trong trang.
  • Exclude Bot Views : chọn yes/no, nếu giá trị đây là yes các máy tìm kiếm sẽ không nạp URL có trong ‘Most Viewed Template’.
  • Views Template : Thiết lập giao diện template hiển thị lượt views. Sử dụng một số biến:
    %VIEW_COUNT%, %POST_URL%…
  • Most Viewed Template : Thiết kế cho cỗ máy tìm kiếm, mặc định template có dạng:
      
  • %POST_TITLE% - %VIEW_COUNT% views

Cho phép các biến trong template:
– %VIEW_COUNT%
– %POST_TITLE%
– %POST_DATE%
– %POST_TIME%
– %POST_EXCERPT%
– %POST_CONTENT%
– %POST_URL%

Các tùy chọn hiển thị views cho những page template như Home page, Single Posts, Pages….bạn có thể bỏ hiển thị lượt views của 1 số trang hoặc giới hạn những user đăng nhập mới thấy hoặc hiển thị tin tức views của bài viết cho mọi người truy cập.

– Thông thường bạn sẽ +1view khi người sử dụng xem bài viết chi tiết, mở /single.php tìm dòng và thêm đoạn code sau ở phía dưới nó.

   if    (    function_exists    (    'the_views'    )    )     {   the_views  (    )    ;     }     ?>    

Chú ý:

  • Bạn cần kiểm tra hàm the_views có tồn tại không, phòng tình huống bạn disabled plugin sẽ gây lỗi website.
  • Bạn có thể đặt hàm trên vào bất kể nơi đâu bạn muốn track post views.

Hàm the_views() hiển thị lượt views của bài viết ngày nay nhưng chỉ +1 views lúc xem bài viết chi tiết.

Tạo views cho post với Post Views Counter

Plugin này được thiết kế tương thích với WP-PostViews nhưng có tối ưu hơn, cấp phép bạn tùy chỉnh chi tiết. Tải plugin Post Views Counter và cài đặt như bình thường.
Sau khi cài đặt xong, bạn tiến hành cấu hình cho plugin Settings-> Post Views Counter.
post-views-counter

– Tại đây chúng ta chọn lựa Post Type hỗ trợ hiển thị views, liệt kê tại mục Post Types Count .
Counter Mode : phương thức lấy tin tức post views bằng phương pháp dùng mã PHP trực diện hoặc thông qua Javascript. Nếu bạn đang sử dụng các cache plugin trong website thì check vào javascript.

Time Between Counts : thiết lập khoảng thời gian reset lại để đếm lại view cho 1 user của bài viết đó. Như mình nói ý tưởng ở trên, mặc định sau 24h plugin sẽ mở lại IP cho phép +1 view mới cho bài viết đó.

Reset Data : xóa dữ liệu post views sau thời gian chỉ định, nếu bạn muốn duy trì dữ liệu views của các posts thì để giá trị này =0

Exclude Visitors : loại bỏ hiển thị views trên trang đối với loại user bạn chỉ định. Thậm trí cho phép chọn từng quyền user.
exclude-visitors-post-views
Lưu ý : khi chọn “Selected user roles” bạn phải nhấn Save changes để lưu lại, sau đó mới thấy mục nhập thêm user roles ở phía dưới.

Exclude IPs : bạn cũng có thể có thể giới hạn từ địa chỉ IP truy cập vào web, bấm vào Add new để khai báo IP mới.

WP-PostViews : nhập dữ liệu posts views đồng bộ từ plugin WP-PostViews.

Deactivation : option cuối cùng, kích hoạt xóa dữ liệu khi deactive plugin. Thường thì bạn không nên, vì khi enabled lại dữ liệu của plugin sẽ mất.

Chuyển sang tab Display , nơi cấu hình hiển thị. Có 2 địa thế hiển thị tự động, tại mục Position chọn:
+’before the content’: view sẽ hiển thị trước nội dung bài viết.
+’after the content’: view sẽ hiển thị sau nội dung bài viết.

Hoặc bạn sẽ chèn mọi trí trong web site sử dụng shortcode, tình huống này bạn chọn Position=manual.

 [post-views] 

Đừng quên nhấn save change để lưu lại.
Kết quả:
post-views-counter-example

Tạo hàm views cho post không sử dụng plugin

Mở functions.php và chèn thêm đoạn code dưới đây:

   //hiển thị view     function   getPostViews  (    $postID    )    {     $count_key     =     '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'    ;     }     //hàm thiết lập views     function   setPostViews  (    $postID    )     {     $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    ++;   update_post_meta  (    $postID    ,     $count_key    ,     $count    )    ;     }     }   

– Để theo dõi post view giống như cách trên bạn mở single.php , tìm đoạn:

    <   ?php   while     (  have_posts  (    )    )     :   the_post  (    )    ;     ?>    

và thêm đoạn code sau vào phía dưới:

   if    (    function_exists    (    'setPostViews'    )    )    {   setPostViews  (    )    ;     //+1views for post   getPostViews  (    )    ;     //hiển thị post view     }   

Ngoài ra, còn có một phương thức khác, giúp tăng thời gian tải trang vì khi người sử dụng truy cập vào mỗi bài viết phải ghi vào CSDL gây nên chậm website. Để xử lý vấn đề này bạn có thể lưu lượt views của posts ở nơi lưu giữ khác, tham khảo bài viết đếm lượt views bài viết trong wordpress sử dụng Firebase.
Chúc bạn thành công!

Bài viết Hiển thị lượt view của bài viết wordpress được tổng hợp và biên tập bởi: dinhthuanit.com. Mọi ý kiến đóng góp và phản hồi vui lòng gửi Liên Hệ cho dinhthuanit.com để điều chỉnh. dinhthuanit.com xin cảm ơn.

Bài Viết Liên Quan


Bài Viết Khác


Quảng cáo
Ads_ngang