用WP-Postviews 插件使用代码实现文章浏览次数的显示且保留原有浏览数据的方法
使用代码替换WP-Postviews 插件实现文章浏览次数会从0开始,那有没有保留WP-Postviews 插件浏览数据的方法吗?其实是有的,下面给大家分享一下解决方法。
问题根源:
解决问题之前,我们先看下那段代码实现的原理:
它是通过在数据库中根据postID 文章ID,然后对每个postID都新建一个“post_views_count”字段,然后使用“get_post_meta”函数获得“post_views_count”字段的数值(即为文章浏览数),最后通过“update_post_meta”函数来为每次浏览+1并且记录到“post_views_count”字段里面,从而实现了文章浏览数统计。
那使用代码替换WP-Postviews 插件实现文章浏览次数会从0开始是什么原因呢?
很简单,因为WP-Postviews 插件是使用自己定义的字段“views”,自然是互补干扰,各显示各的!
解决方法:
解决方法很简单,我们改进一下原有代码,让它直接显示“views”字段的参数即可
改进后代码分享:
/*显示文章浏览次数*/
function getPostViews($postID){
$count = get_post_meta($postID,'views', true);
if($count==''){
delete_post_meta($postID,'views');
add_post_meta($postID,'views', '0');
return "0";
}
return $count.'';
}
function setPostViews($postID) {
$count = get_post_meta($postID,'views', true);
if($count==''){
$count = 0;
delete_post_meta($postID,'views');
add_post_meta($postID,'views', '0');
}else{
$count++;
update_post_meta($postID,'views', $count);
}
}
使用方法
1.打开functions.php,添加上面的代码在之间:
2.打开single.php,添加下面的代码在主循环之内
小技巧:搜索标题显示函数调用代码<?php the_title(); ?>,把下面的代码添加在此代码的后面就可以了
<?php setPostViews(get_the_ID()); ?>
3.在需要显示文章浏览次数的地方添加调用函数代码即可,具体位置这要要看主题而定
<?php echo getPostViews(get_the_ID()); ?>
小技巧1:这个也可以个性显示的,例如我是的:
<?php echo getPostViews(get_the_ID()); ?> 次+
小技巧2:如果想让浏览统计数字像WP-Postviews 插件一样会每3位加一个“,”号,例如“1,234”,那么就把此段代码改为:
<?php echo number_format(getPostViews(get_the_ID())); ?>
最后提醒一下大家,如果你想让WP-Postviews 插件保留浏览数统计数据的话,直接在插件管理里面停用-删除即可,千万不要使用WP-Postviews 插件自身的卸载功能,那会清空所有浏览数统计数据。
原文来自http://www.henghengzhu.com/share/251.html