wordpress中用代码非插件方式实现在添加文章浏览次数功能

今天想看看自己的文章相应浏览数目,突然发现自己没有这个功能,wordpress默认是不显示这个功能,但是它有提供这个功能的api接口,立马动手做一个。还是一贯的原则能不用插件的尽量不用,自己动手写代码。在这里就分享一下我的代码,以供广大博友解决相同问题。
第一步:在主题的functions.php文件里添加以下代码:

    1. /*设置文章浏览次数*/
    2. function jinggege_setPostViews($postID) {
    1.     $count_key = 'jinggege_post_views_count';
    2.     $count = get_post_meta($postID, $count_key, true);
    1.     if($count==''){
    2.         $count = 0;
    1.         delete_post_meta($postID, $count_key);
    2.         add_post_meta($postID, $count_key, '0');
    1.     }else{
    2.         $count++;
    1.         update_post_meta($postID, $count_key, $count);
    2.     }
    1. }
    2. /*获取文章浏览次数*/
    1. function jinggege_getPostViews($postID){
    2.     $count_key = 'jinggege_post_views_count';
    1.     $count = get_post_meta($postID, $count_key, true);
    2.     if($count==''){
    1.     delete_post_meta($postID, $count_key);
    2.     add_post_meta($postID, $count_key, '0');
    1.     return "0 View";
    2.     }
    1.     return $count.' Views';
    2. }
  1. /*代码结束*/

第二步:在single.php 文件,loop 主循环内添加如下代码,我在我的loop循环添加如下:

    1. <?php
    2.     if (have_posts()) : while (have_posts()) : the_post(); jinggege_setPostViews(get_the_ID());
  1. ?>

如上看到我在<?php if (have_posts()) : while (have_posts()) : the_post(); 后添加获取文章浏览次数的函数:jinggege_setPostViews(get_the_ID());
第三步:在你想显示浏览次数的地方调用显示函数,比如我在文章页single.php和主页中都添加了显示函数:

    1. <?php
    2.     echo getPostViews(get_the_ID());
  1. ?>

我在我的博客首页和文章都添加了浏览统计功能。你也开始试试吧。

weinxin
DC Farm小程序二维码
扫一扫添加博客小程序
Jim

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:3   其中:访客  2   博主  1

    • avatar 爱发现爱探索 1

      可以试试,我用wp-postviews老不准,都不想管了,总是统计多了,这也不错吧

        • 激劉勇靖 激劉勇靖 Admin

          @爱发现爱探索 还没有感觉到用代码没有不准的问题。呵呵,反正这个值只是参考,准不准无所谓。

        • avatar 恐怖电影大全 0

          谢博主分享代码·拿来试试··