您可以使用WP_User
:
$wp_user_obj = new WP_User(
// $user_id
get_current_user_id(),
// $name | login, ignored if $user_id is set
\'\',
// $blog_id
get_current_blog_id()
);
或
get_users()
:
$get_users_obj = get_users(
array(
\'blog_id\' => get_current_blog_id(),
\'search\' => get_current_user_id()
)
);
因为他们都是
blog_id
感知,如果你提供的话。
前者将返回WP_User
对象,角色可以如下访问:
// array of roles
$wp_user_obj->roles
// access the first or only
$wp_user_obj->roles[0]
后者将返回
WP_User
对象,实际上只有一个对象,因为
user_id
只能返回一个唯一的对象,角色的访问方式如下:
// array of roles
$get_users_obj[0]->roles
// access the first or only
$get_users_obj[0]->roles[0]
另一个想法,我从来没有这样做过,但如果你有某种共享登录,并且想要当前用户的信息,那么这也可以:
switch_to_blog( $blog_id );
$current_user_at_different_blog = wp_get_current_user();
restore_current_blog();
wp_get_current_user()
是否返回a
WP_User
对象,以便可以访问信息,如:
// array of roles
$current_user_at_different_blog->roles
// access the first or only
$current_user_at_different_blog->roles[0]
最后但并非最不重要的是
current_user_can_for_blog()
可以这样使用:
current_user_can_for_blog( $blog_id, $capability );
codex页面说明:
当前用户是否具有给定博客的功能或角色。
但我非常怀疑current_user_can()
信息技术shouldn\'t be used for roles, 但能力检查是强大的,也是有用的。