如何在WordPress中通过角色ID获取角色名称?

时间:2019-02-17 16:21:28

标签: php wordpress

我怎么能通过WordPress中给定的角色ID获得角色名称?我已经搜索了整个网络,但找不到任何有用的答案。所以我在这里有这段代码,它向我返回了角色的role_id:

$user['user']->roles[0]

因此,例如返回um_customer。角色的名称是Customer,这就是我所需要的。

2 个答案:

答案 0 :(得分:1)

似乎在here上得到回答

global $wp_roles;
echo translate_user_role( $wp_roles->roles[ $role ]['name'] );

但是,我想指出的是,您对角色的“名称”和“ id”之间的区别感到困惑-实际上,您发布的代码确实显示了角色的“名称”(这可以解释您为什么找到答案很麻烦)。

确实,您正在寻找角色的显示名称,该名称使用上面的代码显示(并且Wordpress并未对此进行充分记录)。

答案 1 :(得分:1)

如果将角色ID放入变量中,则可以在WordPress角色对象中循环匹配它。

尝试类似的东西:

$role_id = $user['user']->roles[0];
$get_all_roles = $wp_roles->roles;

foreach ( $get_all_roles as $k => $v ) {
  if ( $k == $role_id ) {
    $role_name = $v['name'];
  }
}

让我知道它是否能完成工作;)