列出具有特定角色的用户,而不是删除具有特定角色的用户

时间:2016-03-27 作者:Kevin S

我当前正在列出除具有管理员角色的用户以外的所有用户,这些用户位于自定义页面模板上,具有:

<?php
    $allUsers = get_users(\'orderby=post_count&order=DESC\');
    $users = array();

    foreach($allUsers as $currentUser)
    {
        if(!in_array( \'administrator\', $currentUser->roles ))
        {
            $users[] = $currentUser;
        }
    }
?>
格式如下:

<?php foreach($users as $user) { ?>
    <div class="profile">
        <div class="avatar">
            <?php echo get_avatar( $user->user_email, \'150\' ); ?>
        </div>
        <div class="profileInfo">
            <h2 class="name"><?php echo $user->display_name; ?></h2>
            <p class="descrption"><?php echo get_user_meta($user->ID, \'description\', true); ?></p>
        </div>
        <div class="clear"></div>
    </div>
<?php } ?>
由于我将再添加6个自定义用户组(角色),因此我希望列出特定角色的用户,而不是列出除管理员角色以外的所有用户。

我已经尝试了几个教程,但由于某些原因,我无法与当前的列表代码合并。

1 个回复
最合适的回答,由SO网友:engelen 整理而成

要从特定角色获取用户,可以使用role 的参数get_users 作用每个角色都有一个特定的ID;对于WordPress的本机角色,以下是administrator, editor, author, contributorsubscriber. 在您的情况下,您只想获取subscriber 用户:

$allUsers = get_users( array(
    \'orderby\' => \'post_count\',
    \'order\' => \'DESC\',
    \'role\' => \'subscriber\'
) );

相关推荐

Save Plugin Options as Array

我正在尝试创建一个简单的选项页面。这些选项由每个用户角色的文本字段组成。但我不想每次添加新用户角色时都编辑代码。因此,我试图;对于每个用户角色并从中生成文本字段。但该值不会保存在选项中。我想我需要在保存之前将值保存在数组中。像这样:add_settings_field( \'weborder_leveranstext\', __( \'Header\', \'weborder\' ), \'weborder_leveranstext_render\', \'plugi