There’s no WordPress function to directly get the current user’s role, so I typically include my own function to serve that purpose, similar to the one below
This function is pretty versatile since if you pass a specific user’s ID or a WP_User object to it, it will return that user’s role. If you pass nothing to it, you’ll get the role of the current user instead.
<?php | |
/* | |
* Get user's role. | |
* | |
* If $user parameter is not provided, returns the current user's role. | |
* Only returns the user's first role, even if they have more than one. | |
* | |
* @param mixed $user User ID or object. Pass nothing for current user. | |
* | |
* @return string The User's role, or an empty string if none. | |
*/ | |
function km_get_user_role( $user = null ) { | |
$user = $user ? new WP_User( $user ) : wp_get_current_user(); | |
return $user->roles ? $user->roles[0] : ''; | |
} |
Note that if a user has multiple roles assigned to them, this function will only return the first role.
Written by Kellen Mace, who lives in Rochester Hills, MI and builds cool stuff on the web. About Kellen // Follow him on Twitter →