根据用户发表的文章数量计算用户的百分比排名,显示用户排名超过了百分之多少的用户
文 / @UTHEME
小本本的自我介绍
大家好,我是小本本,今天要给大家介绍的是一个很有趣的功能,可以根据用户发表的文章数量计算出他在网站中的百分比排名。

获取用户发表的文章数量
/*获取用户发表的文章数量*/
function num_of_author_posts($user_id){
//根据作者ID获取该作者的文章数量
global $wpdb;
$user_id=(int)$user_id;
$sql="SELECT COUNT(*) FROM {$wpdb->posts} WHERE post_author='$user_id' AND post_status='publish'";
$coo=$wpdb->get_var($sql);
return ($coo) ? $coo : 0;
}
根据用户所发表的文章数量,计算用户的百分比排名
/* get user post number sort */
function get_user_sort($user_id){
//获取所有用户
$users=get_users(array('fields'=>'ID'));
$user_post_num=array();
foreach($users as $user){
$user_posts=num_of_author_posts($user);
$user_post_num[next($users)]=$user_posts;
}
//获取当前用户的文章数量
$current_user_posts=num_of_author_posts($user_id);
//根据文章数量排列用户数组
sort($user_post_num);
$sort=array_search($current_user_posts,$user_post_num);//usersort
$percent_sort=round((($sort/(count($user_post_num)-1))*100),0).'%';
return $percent_sort;
}
以上功能实现最终实现的效果是类似是这样的:

严格意义上来讲,这个数据并不准确,事实上,我们也不需要这个用户太准确,只要给用户一个大概的数据,在用户发表文章的时候,这个数字会变化就行了,做到这一点,就能起到鼓励用户,增加活跃度的作用了。关于这个功能,如果你有更好的想法,欢迎通过评论和大家交流。

相关文章
-
个人网站选择WordPress还是Typecho? 2023-05-28 23:33:13
-
盘点2023年最好用的三款wordpress知识库主题 2023-05-28 23:20:26
-
wordpress建外贸B2C独立站的五大优势 2023-05-28 23:05:49
-
盘点2023年依然好用的3款wordpress文档主题 2023-05-28 23:02:19
-
盘点2023年依然好用的3款wordpress外贸网站主题 2023-05-28 22:59:41
-
盘点2023年依然好用的3款wordpress轻社区主题 2023-05-28 22:57:54
-
盘点2023年依然好用的3款wordpress电商主题 2023-05-28 22:56:05
-
wordpress后台地址是多少(附:后台地址修改教程) 2023-05-28 22:54:15
-
盘点2023年依然好用的3款wordpress笔记主题 2023-05-28 22:51:13
-
开源wordpress主题:kratos 介绍 2023-05-28 22:47:46