WordPress 获取用户发布文章数量函数 count_user_posts
原文来自:https://zhangzifan.com/wordpress-count_user_posts.html
在对于 WordPress 开发中,特别是对于网站需要开发作者或者提供类似于专栏等页面,这时候就需要获取某个作者的发文数量来提供展示,甚至在二次开发的时候做分页或者其它功能,那么非常贴心的 WordPress 依旧提供了相关的函数 get_usernumposts 以及 count_user_posts,不过 get_usernumposts 已经被废弃,不建议使用。
ount_user_posts 函数比 get_usernumposts 的更为自由,可以根据自己开发需要不仅能够获取用户的用户数量,还能够分别对不同文章类型,以及文章是否被公开来单独统计作者的发文数量,可以说是极大的提升了二次开发的使用性。
// 参数 用户 ID(int),文章类型(array|string),是否公开(bool ) count_user_posts( $userid, $post_type = 'post', $public_only = false )
如果只是想要单纯的获取用户或作者的文章数量,参数直接传入用户的 ID 即可。默认的文章类型为 post,查询的统计数量包括草稿等状态的文章,下面简单的举两个例子:
获取用户 ID 为 6 的用户文章数量:
echo count_user_posts(6); echo count_user_posts(6, 'post', false);
这两行的作用效果都是一样的,包括草稿内容。
获取用户 ID 为 6 的文章和页面总数量,不包括草稿内容:
echo count_user_posts(6, array('post','page'), true);
获取当前 WordPress 登录用户公开文章数量:
$user_id = get_current_user_id(); echo count_user_posts($user_id,'post',true);