根据用户发表的文章数量计算用户的百分比排名,显示用户排名超过了百分之多少的用户
文 / @WordPress主题
小本本的自我介绍
大家好,我是小本本,今天要给大家介绍的是一个很有趣的功能,可以根据用户发表的文章数量计算出他在网站中的百分比排名。
获取用户发表的文章数量
/*获取用户发表的文章数量*/
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古腾堡编辑器的区块(PHP+原生JS) 2024-01-10 01:01:06
-
搭建一个WordPress网站需要多少成本 2023-11-06 00:09:51
-
Symlink介绍(附:如何使用Symlink进行WordPress开发) 2023-11-05 23:38:32
-
让WordPress实现数据库同步的插件:HyperDB 2023-10-24 23:40:49
-
allegro电商平台值得做吗(附:2023年Allegro注册流程指南) 2023-10-08 21:53:39
-
印度跨境电商平台有哪些(附:印度跨境电商做什么产品好) 2023-10-08 21:34:23
-
跨境电商必看的几大海外二手电商平台 2023-10-08 18:04:42
-
WordPress同城互联网产品解决方案:UBASE 2023-10-03 16:40:39
-
WordPress网站的安全插件:wordfence 2023-09-14 09:25:18
-
WordPress 6.3 支持在手动更新插件和主题失败后回滚旧版本 2023-08-28 16:58:45