WP 05 – WordPress不使用插件实现阅读量的统计 (亲测有效)

WP 05 – WordPress不使用插件实现阅读量的统计 (亲测有效)

目录

1 写在前面

看过很多优秀的博客都有阅读次数的统计, 感觉这真是个新奇的功能:
能知道有多少人查看了自己的写的东西, 多有成就感的一件事, 而且这也能让自己更有动力去更新文章了?

在搜索中, 发现一般为WordPress中的文章添加阅读次数的统计, 大多会用到 wp-postviewswp-postviews-plus 等类似的插件.

我们知道, WordPress本来就比较臃肿, 安装太多的插件会拖慢网站的速度, 所以查找并成功实践了不用插件实现文章阅读次数统计的方法, 在这里作个记录, 供大家学习参考.

2 实现方案

2.1 添加代码到模板函数中

先把下面的代码加到主题模板文件 functions.php 中:

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 "; 
    }
    return count.' ';
}
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);
    }
}

代码放置位置如图:

013-代码实现阅读量统计-模板函数

2.2 添加代码到页面文件中

把下面的代码加到主题的文章页面文件 single.php 中:

<!-- 放置在这句话下面 -->
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>  
    <?php setPostViews(get_the_ID()); ?>  

代码放置位置如图:

014-代码实现阅读量统计-单个页面

2.3 添加次数统计代码到指定的位置

最后把调用显示阅读次数的代码加到适当的位置:

要把 阅读次数统计 功能添加到页面的指定位置, 如何定位这个位置对应的文件呢?

参考上篇博文 WP 04 – 修改WordPress的字体、段落间距等的一种思路 中的方法.

我这里使用的是 Nisarg 主题, 要插入的文件是 inc/template-tags.php, 插入如下:

$view_count = getPostViews(get_the_ID()); 
printf( '<i class="fa fa-users" style="margin-left:10px;"></i>'
       . esc_html__( '%1$s', 'nisarg' ) . ' 人阅读', $view_count );

代码插入位置图:

015-代码实现阅读量统计

3 扩展: 后台修改文章的阅读次数

完成上述步骤了? 赶紧清除下缓存, 打开文章看下效果吧?

016-阅读次数实现效果图

话说, 这个阅读次数的数量是怎么保存的呢? —— 可以在文章的编辑页面找到答案:

017-修改阅读次数

可以发现, 在模板文件中添加的方法为每篇文章都添加了一个局部变量 post_views_count, 这个变量记录了页面的访问次数.

修改下它的值, 重新发布文章后, 浏览这篇文章, 看看阅读次数有什么变化吗?

说明:

这种统计方式不是实时的, 它本身有缓存, 因此在短时间内同一个用户刷新文章, 是不会立即改变阅读次数的 —— 表现为有部分阅读量不会统计进去.

参考资料

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

Track post views without a plugin using post meta

(全文完)

瘦风的南
微信关注《瘦风的南墙》 在移动端阅读文章

(感谢阅读, 转载请注明作者和出处 瘦风的南墙 , 请勿用于任何商业用途)

——=== 访问 本站404页面 寻找遗失儿童 ===——

相关文章

  • WP 04 – 修改WordPress字体大小、段落间距的一种思路 WP 04 – 修改WordPress字体大小、段落间距的一种思路
  • WP 02 – 优化WordPress的固定链接 – Nginx重写URL WP 02 – 优化WordPress的固定链接 – Nginx重写URL
  • WP 03 – 给你的网站开启 HTTPS (使用免费的 SSL 证书) WP 03 – 给你的网站开启 HTTPS (使用免费的 SSL 证书)
  • WP 01 – 阿里云服务器搭建WordPress站点 WP 01 – 阿里云服务器搭建WordPress站点
  • Java 05 – Java的运算符 Java 05 – Java的运算符


我的博客
WordPress, 博客优化