获取所有具有作者权限的用户

时间:2013-04-05 作者:MidhuN

有谁能告诉我,如何通过在WordPress中查询DB来获取所有拥有作者权限的用户,并根据他们写的帖子数量对他们进行排序。

我使用以下查询从DB获取所有用户:

$authors = $wpdb->get_results(
    "SELECT ID, user_nicename from $wpdb->users ORDER BY display_name"
);  

2 个回复
最合适的回答,由SO网友:Johannes Pille 整理而成

除非您想从数据库中检索自定义数据,否则几乎不需要使用WPDB 类(或其全局对象)。虽然很明显,这样做也是可能的。

为了完整性起见,如果有理由不使用更抽象的函数,则必须使用JOIN 在select语法中,用户角色位于usermeta表中。

但使用get_users 功能:

$args = array(
    \'role\'         => \'author\',
    \'orderby\'      => \'display_name\'
);
$authors = get_users( $args );
[EDIT] 关于评论中的问题(按职位数量排序):

使用\'post_count\' 作为\'orderby\' 参数(并阅读链接的codex页面,该页面提供了所有可能的参数)。

SO网友:Rajeev Vyas
$args = array();
$args[\'fields\'] = array( \'ID\', \'display_name\' );
$args[\'role\'] = \'author\';
$authors= get_users( $args );

Reference : http://codex.wordpress.org/Function_Reference/get_users

结束

相关推荐

Separate Out Real Users

如果我看/wp-admin/users.php 我看到了所有的用户,但有些用户发送了一封虚假的电子邮件,从未使用过他们的密码。有没有办法知道谁至少使用过一次密码?如果没有,是否有一个插件可以继续这样做?