Trang chủ Mã nguồn mở Code hiển thị lượt xem bài viết Wordpress không cần Plugin

Code hiển thị lượt xem bài viết Wordpress không cần Plugin

bởi Vi Nè
753 lượt xem

Dưới đây là một số cách để hiển thị số lượt xem bài viết trong WP(WordPress) không cần cài plugin mà bạn có thể áp dụng cho website của bạn.

Cách 1:

Sử dụng đoạn code trong file functions.php

function ntc_post_view_count() {
    if ( is_single() ) {
        global $post;
        $count_post = esc_attr( get_post_meta( $post->ID, '_post_views_count', true ) );
        if ( $count_post == '' ) {
            $count_post = 1;
            add_post_meta( $post->ID, '_post_views_count', $count_post );
        } else {
            $count_post = (int) $count_post + 1;
            update_post_meta( $post->ID, '_post_views_count', $count_post );
        }
    }
}
 
add_action( 'wp_head', 'ntc_post_view_count' );

Hoặc sử dụng code dưới đây trong file single.php

if ( is_single() ) {
    global $post;
    $count_post = esc_attr( get_post_meta( $post->ID, '_post_views_count', true ) );
    if ( $count_post == '' ) {
        $count_post = 1;
        add_post_meta( $post->ID, '_post_views_count', $count_post );
    } else {
        $count_post = (int) $count_post + 1;
        update_post_meta( $post->ID, '_post_views_count', $count_post );
    }
}

Sau đó sử dụng mã này để hiển thị:

global $post;
$visitor_count = get_post_meta( $post->ID, '_post_views_count', true );
if ( $visitor_count == '' ) {
    $visitor_count = 0;
}
if ( $visitor_count >= 1000 ) {
    $visitor_count = round( ( $visitor_count / 1000 ), 2 );
    $visitor_count = $visitor_count . 'k';
}
echo esc_attr( $visitor_count );

Cách 2:

Thêm đoạn code sau vào file functions.php

// function to display number of posts.
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';
}

Chèn function setPostViews vào file single.php

<?php setPostViews(get_the_ID()); ?>

Và thêm đoạn code này trong file single.php để hiện thị số lượt xem bài viết.

<?php echo getPostViews(get_the_ID()); ?>

Ngoài ra bạn có thể kiểm tra thêm điều kiện nếu là tác giả bài viết hoặc người dùng đã đăng nhập thì không cộng vào số lượt xem bài đăng.

<?php
global $current_user;
get_currentuserinfo();
 
if ( is_user_logged_in() && $current_user->ID == $post->post_author ) {
    return;
} 
?>

Kết quả

Nếu bạn có cách nào khác để hiển thị số lượt xem bài viết trong WP(WordPress) thì đừng ngại comment vào form bên dưới, mình sẽ cập nhật thêm vào để bài viết đầy đủ hơn. Xin cảm ơn.

Có thể bạn sẽ quan tâm

0 bình luận

Phan Quốc Bảo 05/12/2019 - 14:11

Cách này làm web nhẹ hơn, không cần dùng plugin 🙂 🙂

Phản hồi
NTCCoin 10/12/2019 - 09:51

Ad ơi, làm sao cho hiện hình con mắt giống của ad thế?

Phản hồi
Tạo Web Mới 12/12/2019 - 20:31

Bạn cài fontawesome sau đó chèn đoạn code này vào trước hoặc sau nơi hiển thị <i class="fas fa-eye"></i>

Phản hồi
Phan Khánh Huy 11/12/2019 - 17:34

Sao tôi làm mà theme bị đóng khung, bị lỗi theme ý, trong single 🙁

Phản hồi
Tạo Web Mới 12/12/2019 - 21:21

Bạn kiểm tra xem, bạn có chèn đoạn code này chưa <?php setPostViews(get_the_ID()); ?>

Phản hồi
Trúc Mai 02/01/2020 - 22:45

Có ai lỗi giống e k, sao e làm như bài mà ko thấy hiển thị

Phản hồi
Tạo Web Mới 04/01/2020 - 23:24

Bạn kiểm tra xem đã setup đầy đủ chưa ạ, nếu sai hoặc thiếu sẽ bị lỗi ngay ạ

Phản hồi
My 24/01/2020 - 11:54

Làm được rồi ad? Mà cho e hỏi có cách nào làm lượt view fake không ạ?

Phản hồi

Bình luận