免插件实现WordPress文章阅读次数

作者: xyzos 时间: 2013-10-15 02:25 分类: WordPress
关注(1820) 点评(0)

一般为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

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

代码i源自:M2主题

文章转自:http://zmingcx.com/no-plugin-wordpress-reads.html

标签:,

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.