Cách hiển thị lượt xem bài viết cho theme Flatsome

Để hiển thị lượt xem cho bài biết của theme Flatsome, bạn chỉ cần copy đoạn code bên dưới dán vào

Giao diện > Theme Fle Editor > functions.php xong bấm Lưu là được

Code bên dưới có 2 phần; Phần 1 là hiển thị lượt xem bên trong phần quản trị bài viết. Phần 2 là hiện thị lượt xe bài viết bên ngoài trang web.

Bạn có thể xem thêm nhiều thủ thuật hay cho wordpress và theme Flatsome tại: https://vietut.com/digital-marketing/web-design/wordpress/

Cách hiển thị lượt xem bài viết cho theme Flatsome

/** P1 Code đếm và hiển thị lượt xem trong db
*/
//B11: Vietut.com code lấy lượt xem
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 "01 Views";
}
return $count.' views';
}

//B12: Vietut.com code đếm lượt xem
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);
}
}

//B13: Vietut.com code hiển thị số lượt xem trong dashboard
add_filter('manage_posts_columns', 'posts_column_views');
add_action('manage_posts_custom_column', 'posts_custom_column_views',5,2);
function posts_column_views($defaults){
$defaults['post_views'] = __('Views');
return $defaults;
}
function posts_custom_column_views($column_name, $id){
if($column_name === 'post_views'){
echo getPostViews(get_the_ID());
}
}

/** P2 Thêm code hiển thị lượt xem ngoài trang web
*/
//B21: Vietut.com Đếm view trong post
function codfe_count(){
if ( is_single() ) :
setPostViews(get_the_ID());
endif;
}
add_action( 'flatsome_after_header', 'codfe_count' );

//B22: Vietut.com Overwrite hàm flatsome_posted_on để viết lại mô tả post
// Prints HTML with meta information for the current post-date/time and author.
function flatsome_posted_on() {
$time_string = '<time class="entry-date published updated" datetime="%1$s">%2$s</time>';
if ( get_the_time( 'U' ) !== get_the_modified_time( 'U' ) ) {
$time_string = '<time class="entry-date published" datetime="%1$s">%2$s</time><time class="updated" datetime="%3$s">%4$s</time>';
}

$time_string = sprintf( $time_string,
esc_attr( get_the_date( 'c' ) ),
esc_html( get_the_date() ),
esc_attr( get_the_modified_date( 'c' ) ),
esc_html( get_the_modified_date() )
);

$posted_on = sprintf(
esc_html_x( 'Posted on %s', 'post date', 'flatsome' ),
'<a href="' . esc_url( get_permalink() ) . '" rel="bookmark">' . $time_string . '</a>'
);

$byline = sprintf(
esc_html_x( 'by %s', 'post author', 'flatsome' ),
'<span class="meta-author vcard"><a class="url fn n" href="' . esc_url( get_author_posts_url( get_the_author_meta( 'ID' ) ) ) . '">' . esc_html( get_the_author() ) . '</a></span>'
);

echo
'<div class = "tp-post-meta">
<span class="posted-on"><i class="fa fa-address-book-o" aria-hidden="true"> </i>' . $posted_on . '|</span>
<span class="byline"><i class="fa fa-user-o" aria-hidden="true"> </i>' . $byline . '|</span>
<span class="tp-post-view"><i class="fa fa-eye" aria-hidden="true"> </i>'.getPostViews(get_the_ID()).'|</span>

</div>';

}

Đoạn code bạn cung cấp là một mã PHP được sử dụng để đếm và hiển thị lượt xem của một bài viết trong cơ sở dữ liệu WordPress. Để giải thích mã này, tôi sẽ phân tích từng phần trong mã của bạn.

Phần P1:

  • Hàm getPostViews($postID) được sử dụng để lấy số lượt xem của một bài viết dựa trên ID của bài viết. Hàm này truy vấn cơ sở dữ liệu để lấy giá trị lượt xem từ meta key ‘post_views_count’.
  • Hàm setPostViews($postID) được sử dụng để tăng số lượt xem của một bài viết dựa trên ID của bài viết. Hàm này cũng truy vấn cơ sở dữ liệu và cập nhật giá trị lượt xem.
  • Hàm posts_column_viewsposts_custom_column_views được sử dụng để hiển thị số lượt xem của mỗi bài viết trong trang quản lý bài viết của WordPress.

Phần P2:

  • Hàm codfe_count được gọi khi một bài viết đơn lẻ được hiển thị. Nếu điều kiện is_single() đúng, hàm này sẽ gọi hàm setPostViews(get_the_ID()) để tăng số lượt xem của bài viết đó.
  • Hàm flatsome_posted_on được sử dụng để hiển thị thông tin về ngày đăng và số lượt xem của bài viết.

Để sử dụng mã này, bạn cần thêm các đoạn mã vào trong theme WordPress của bạn. Hãy đảm bảo bạn đã sao chép mã đúng cách và đặt nó vào các vị trí tương ứng trong theme của bạn.

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *