检查当前用户是否是wordpress中的管理员

2022-08-30 14:04:45

我正在为wordpress开发一个插件,我想找到当前用户是否是管理员,不幸的是,我无法使用current_user_can(),因为它给了我错误,所以我使用全局$current_user。但是,即使对于管理员用户,我也无法进入if部分。如何解决这个问题?

global $current_user;
if ($current_user->role[0]=='administrator'){
function hide_post_page_options() {
//global $post;
// Set the display css property to none for add category and add tag functions
$hide_post_options = "<style type=\"text/css\"> .jaxtag { display: none; } #category-adder { display: none; } </style>";
print($hide_post_options);
}
add_action( 'admin_head', 'hide_post_page_options'  );
}

答案 1

请尝试类似下面的操作:

if ( current_user_can( 'manage_options' ) ) {
    /* A user with admin privileges */
} else {
    /* A user without admin privileges */
}

在此处阅读有关该功能的更多信息current_user_can


答案 2

获取用户并检查它是否具有管理员角色,如下所示:

function is_site_admin(){
    return in_array('administrator',  wp_get_current_user()->roles);
}

if (is_site_admin()) {
  echo 'Woot Woot';
} else {
  echo 'So sad, I have no rights';
}

推荐