通过 ID WordPress 获取用户角色

新手上路,请多包涵

我需要以某种方式只用他们的 id 来检查某人的角色。我找到了 current_user_can() 检查。但这仅适用于已登录的人。如果该用户不是当前用户,我将如何检查?我正在使用电话订购系统,但它使用管理员/特定帐户为其他人订购。

原文由 Tristan .L 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 343
2 个回答

要检查用户是否具有特定角色,您必须获取他们的角色列表并查看该角色是否在此处列出。

示例函数:

 function user_has_role($user_id, $role_name)
{
    $user_meta = get_userdata($user_id);
    $user_roles = $user_meta->roles;
    return in_array($role_name, $user_roles);
}

示例用法:

 $user_is_subscriber = user_has_role(get_current_user_id(), 'subscriber');

原文由 Meathanjay 发布,翻译遵循 CC BY-SA 4.0 许可协议

你好试试这个最佳代码

if (get_userdata($post->post_author)->roles[0] == 'your_specified_role'){
   echo 'role exist';
}else{
   echo 'role does not exist';
}

原文由 phpier 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题