if admin is logged in

admin2025-06-03  2

We know, that is_admin() checks if current URL belongs to DASHBOARD (BUT it doenst check whether user is ADMIN).

So, I use this function to detect if administrator is logged in wordpress:

function is_admin_user(){
  require_once(ABSPATH.'wp-includes/pluggable.php'); return current_user_can('create_users'); //or 'manage_options'
}

however, that is not ideal solution. Does there exist any built-in function, like wp_is_administrator()?

We know, that is_admin() checks if current URL belongs to DASHBOARD (BUT it doenst check whether user is ADMIN).

So, I use this function to detect if administrator is logged in wordpress:

function is_admin_user(){
  require_once(ABSPATH.'wp-includes/pluggable.php'); return current_user_can('create_users'); //or 'manage_options'
}

however, that is not ideal solution. Does there exist any built-in function, like wp_is_administrator()?

Share Improve this question edited Nov 9, 2017 at 21:34 T.Todua asked Aug 2, 2013 at 16:46 T.ToduaT.Todua 5,8909 gold badges52 silver badges81 bronze badges 2
  • 3 if(current_user_can('administrator')) – Howdy_McGee Commented Aug 2, 2013 at 17:06
  • 1 What your code suggests is that you use some kinda bootstrap to laod WP functions outside WP but even in this case you can use what Howdy_McGee says -> see documenation – JMau Commented Aug 2, 2013 at 17:19
Add a comment  | 

2 Answers 2

Reset to default 25

current_user_can will accept a role name but, sadly, the behavior with roles is not entirely consistent.

The following should work and is simpler than what you have, by a little bit.

$current_user = wp_get_current_user();
if (user_can( $current_user, 'administrator' )) {
  // user is an admin
}

It seems that the simplest way would in fact be to use current_user_can as such:

if( current_user_can( 'administrator' ) ){} // only if administrator

This seems like a duplicate.

转载请注明原文地址:http://conceptsofalgorithm.com/Algorithm/1748910319a314737.html

最新回复(0)