不用wordpress插件显示文章浏览统计功能代码修改

不用wordpress插件显示文章浏览统计功能代码修改,第1张

不用ss="superseo">ss="superseo">wordpress插件显示文章浏览统计功能代码修改(原理分析)

Wordpress没有显示文章浏览数的插件,有原理说明。网上有很多关于这方面的文章,但是如果不知道原理,难免会感到不安,生怕代码有什么漏洞影响网站的正常访问。我们来解释一下原理。代码已经在WordPress版本3.4.1上测试过了。

增加浏览文章的数量

Wordpress本身不具备文章浏览量的统计功能,所以在显示文章时需要记录文章浏览量才能阅读浏览量。wordpress的数据库中的文章表是wp_posts,其中没有浏览次数字段。如果你自己添加字段变化,它会很大。更好的方法是将数据记录在wp_postmeta表中,该表用于记录一些文章扩展数据。实现代码如下:


复制代码如下:
/**
*设置文章的浏览次数
*@paramint$postid文章编号
*/
函数setpostviews($postID)
$count=get_post_meta($postID,$count_key,true);
if($count==''){
add_post_meta($postID,$count_key,'1');
}else{
$count++;
update_post_meta($postID,$count_key,$count);
}
}

代码流程是先从wp_postmeta获取文章浏览量,然后做出判断:如果没有获取数据,则增加文章浏览量,初始值设为1;否则,浏览数加1,更新文章浏览数。

最后,只需将这段代码复制到主题的funtions.php文件中,并在文章页面的主循环中调用它(single.php)。调用代码如下:


复制代码如下:
<?PHPsetPostViews(get_the_ID());?>





获取文章浏览量

浏览记录数后即可阅读文章。代码如下:


复制代码如下:
FunctionGetPostViews($postID){
$count_key='post_views_count';
$count=get_post_meta($postID,$count_key,true);
if($count==''){
return1;
}
return$count;
}

代码流程是从wp_postmeta获取文章的浏览次数,如果没有则返回1,否则返回浏览次数。

将这段代码复制到主题的funtions.php文件中,并在需要的地方调用这个方法。

总结

网上流行的版本调用delete_post_meta,不用仔细看代码。还有一个postviews插件可以实现类似的功能,但是只兼容官网的WordPress3.3.2版本。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/772513.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-03
下一篇 2022-05-03

发表评论

登录后才能评论

评论列表(0条)

保存