专栏首页张戈的专栏WordPress获取文章浏览总数

WordPress获取文章浏览总数

大部分 WordPress 都会安装 wp-postviews 插件来记录文章浏览量,这是一个很实用的插件。不过它并没有提供计算文章浏览总数的功能,为了弥补这个缺憾,我们可以在插件基础上 DIY 一个统计文章浏览总数的功能。

实现很简单,网络上也已经有文章做了分享,代码如下:

//浏览总数
function lo_all_view() {
    global $wpdb;
    $count=0;
    $views= $wpdb->get_results("SELECT * FROM $wpdb->postmeta WHERE meta_key='views'");
    foreach($views as $key=>$value)
    {
        $meta_value=$value->meta_value;
        if($meta_value!=' '){
            $count+=(int)$meta_value;
    }
}
return $count;
}

这个代码实现的原理是先把所有符合条件的 meta 字段全部查询了出来,然后做遍历运算得到最终浏览总数,比较啰嗦。

所以我重新写了一个性能更好的函数,尤其是用于大量文章的网站的时候,代码如下:

/**
* WordPress 获取文章浏览总数优化版 By 张戈博客
* 文章地址:https://zhangge.net/551.html
* 转载请保留原文出处,谢谢合作!
*/
function lo_all_view(){
    global $wpdb;
    $count =  $wpdb->get_var("SELECT sum(meta_value) FROM $wpdb->postmeta WHERE meta_key='views'");
    return $count;
}

实现更加简单,直接使用 MySQL 的 sum 方法计算浏览总数,一步到位。

用法和上文代码一样:

1、将这个函数添加到 WordPress 主题函数模板文件 functions.php 当中即可(注意如果之前加过同名函数的话,请先删除,否则会出现冲突导致网站报错!)

2、在需要显示浏览总数的地方,加入如下代码即可:

<?php echo lo_all_view(); ?>

好了,本文分享结束,希望对你有所帮助。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MySQL主从报错解决:Table ‘mysql.gtid_slave_pos’ doesn’t exist

    给内部一个数据库做异地热备,热备部分采用了 MariaDB 的 galera 集群模式。然后挑选其中一台作为 Slave 和深圳主集群做主从同步。

    张戈
  • Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程

    上上篇文章《nginx 平滑升级&新增模块》提到了公司的 https 访问需求。当我新增了 SSL 模块之后,却发现以前还真没部署过 https 访问。 下面整...

    张戈
  • Shell下制作自解压安装包,实现脚本的简单加密

    一、原理阐述 在 linux 下可以用几个最基本的命令制作一个自解压的程序。其原理是:利用 cat 命令可以将两个文件连起来(用>>追加也能达到同样效果),前一...

    张戈
  • 2014年八大最热门的大数据工作

    大数据时代,数据过剩,人才短缺,越来越多的IT专业人士希望能够进入充满机遇的大数据领域,但是,到底哪些具体的大数据专业岗位和人才最为吃香呢?人力资源公司Kfor...

    小莹莹
  • 0462-Hadoop和大数据要完蛋了吗?

    几个星期以前,Hadoop时代的两大巨头Cloudera和Hortonworks宣布他们将合并。该公告声称这将是“merger of equals(平等的合并)...

    Fayson
  • 删除顺序表L中最小元素结点,并通过引用型参数value返回其值 如果删除成功,返回TRUE,否则,返回false

    week
  • ThreeJS 掏洞术

    最近闲来无事 ,于是我就想用 ThreeJS 画个房子 ๑乛◡乛๑ 。而我选择从画 ‘墙’ 开始下手, 其实说白了‘墙’ 就是个立方体而已,但是窗户、门呢,所以...

    Melody132
  • 持续扩大投入,揭秘Hitachi Vantara招兵买马背后的逻辑

    “在新财年里,Hitachi Vantara中国区的团队人员和技术资源都有很大的提升,正在进行中的办公扩建工程,就是最好的说明。”Hitachi Vantara...

    大数据在线
  • Vue常见面试题整理

    看看面试题,只是为了查漏补缺,看看自己那些方面还不懂。切记不要以为背了面试题,就万事大吉了,最好是理解背后的原理,这样面试的时候才能侃侃而谈。不然,稍微有水平的...

    Fundebug
  • Excel图表学习50: 绘制双层面板折线图

    在Excel图表学习系列中,已经介绍过几个绘制面板图的示例。这里,再来学习一下绘制面板图的基本技巧。(注:示例引用自Jon Peltier的《Easy Two-...

    fanjy

扫码关注云+社区

领取腾讯云代金券