自定义查询从wordpress usermeta键和值获取用户id

问题描述 投票:0回答:1

我需要一个自定义查询来获取除管理员 wp_capability 之外的所有用户!=“管理员”

从wp_users、wp_usermeta中选择id,其中meta_key =“wp_capability”......不确定

wp_capability 具有一些值,例如 a:1:{s:10:"subscriber";b:1;} 用户和 a:2:{s:13:"administrator";b:1;s:13:"bbp_keymaster “;b:1;} 管理员。

任何帮助将不胜感激。

php wordpress
1个回答
0
投票

列出所有用户:

$users = get_users();

过滤角色(例如订户):

$users = get_users('role=subscriber');

排除 id 用户:

$users = get_users('exclude=1');

过滤角色(例如,除管理员之外的所有角色):

function get_users() { 

$users = array();
$roles = array('subscriber', 'contributor', 'author', 'editor');

foreach ($roles as $role) :
    $users_query = new WP_User_Query( array( 
        'fields' => 'all_with_meta', 
        'role' => $role, 
        'orderby' => 'display_name'
        ) );
    $results = $users_query->get_results();
    if ($results) $users = array_merge($users, $results);
endforeach;

return $users;

}

© www.soinside.com 2019 - 2024. All rights reserved.