前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >WordPress免插件仅代码实现文章浏览次数的方法(1)

WordPress免插件仅代码实现文章浏览次数的方法(1)

作者头像
Jeff
发布2018-01-19 11:23:14
8840
发布2018-01-19 11:23:14
举报
文章被收录于专栏:DeveWorkDeveWork

在WordPress中为每一篇文章提供个“浏览次数”计数,一来可以间接地给访客一种文章有价值的暗示,二来方便自己获取相关数据(访客的内容偏好等等),三貌似想不到了。实现文章浏览次数很多人使用如wp-postviews 这类WordPress插件,但是使用wordpress的一条黄金准则是“少用插件,能用代码实现不用插件”。网络上有不少方法,现在提供一下目前本站正在使用的方法:

原理:通过自定义字段来保存浏览次数,每执行一次主循环loop,数据+1。

一、将下面的代码丢入主题下的funtions.php的文件的最后一个 ?> 内:

//文章浏览次数 Devework.com function getPostViews($postID){ $count_key = 'views'; $count = get_post_meta($postID, $count_key, true); //如果为空设置为0 if($count==''){ delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '0'); return "0"; } return $count; } //设置浏览数-参数文章ID function setPostViews($postID) { $count_key = 'views'; $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{ //如果不为空,加1,更新数据 $count++; update_post_meta($postID, $count_key, $count); } }

二、打开主题的single.php,找到下面这段代码:

if(have_posts()): while(have_posts()):the_post();

在其后面加上一句setPostViews(get_the_ID());即是上面的代码变为:

if (have_posts()) : while (have_posts()) : the_post();setPostViews(get_the_ID());

三、在需要显示的地方添加以下代码调用:

浏览:<?php echo number_format(getPostViews(get_the_ID())); ?>次

当然,“点击xx次”可以修改你想要得内容。

如果你想手动调整数据(比如想调高数据装B一下),可以在文章编辑页面的自定义栏目的views的数字改为你需要的。

这样就大功告成!现在又干掉了一个WP postviews插件!

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2013/04/09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档