鹿泽鹿泽  2024-07-06 22:39:31 鹿泽笔记 隐藏边栏  1 

为Wordpress文章添加阅读次数统计,会用到wp-postviews或者wp-postviews-plus插件,这里分享两段不用插件实现Wordpress文章阅读次数的代码,供大家参考。

代码一:

一、首先将下面代码加到主题functions模版文件中:

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';
}
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);
    }
}

二、接下来将下面代码加到主题single模版主循环中:

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

也就是类似这句的下面

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

三、最后,将调用显示阅读次数代码加到single模版适当的位置:

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

如果想在其它位置显示阅读次数,可以将下面代码也加到functions模版中:

remove_action('wp_head','adjacent_posts_rel_link_wp_head',10,0);

原文:Track post views without a plugin using post meta

代码二:

一、同样将下面代码加到主题functions模版文件中:

//postviews
function get_post_views ($post_id) {
    $count_key = 'views';
    $count = get_post_meta($post_id, $count_key, true);
    if ($count == '') {
        delete_post_meta($post_id, $count_key);
        add_post_meta($post_id, $count_key, '0');
        $count = '0';
    }
    echo number_format_i18n($count);
}
function set_post_views () {
    global $post;
    $post_id = $post -> ID;
    $count_key = 'views';
    $count = get_post_meta($post_id, $count_key, true);
    if (is_single() || is_page()) {
        if ($count == '') {
            delete_post_meta($post_id, $count_key);
            add_post_meta($post_id, $count_key, '0');
        } else {
            update_post_meta($post_id, $count_key, $count + 1);
        }
    }
}
add_action('get_header', 'set_post_views');

二、将调用显示阅读次数代码加到single模版适当的位置:

<?php get_post_views($post -> ID); ?> views

调用显示阅读次数代码也可以加到其它模版文件的适当位置。

当然,插件还是很方便的,不懂代码的朋友直接使用插件还是不错的,知名插件基本上不会出现什么问题的。

1、文章版权归作者所有,未经允许请勿转载。
2、本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
3、咨询请联系QQ:526009505