Get user role by ID WordPress Get user role by ID WordPress wordpress wordpress

Get user role by ID WordPress


You can't get user role directly. First, you have to get the user_meta_data, and it will return an Object that will contain user roles.

Code:

$user_meta=get_userdata($user_id);$user_roles=$user_meta->roles; //array of roles the user is part of.


The info you need to know before you proceed:

  • You can't get user role by ID directly.
  • You can get all the roles a user is assigned to.

Let's get all the roles and check if the role you're interested in is there or now.

<?php// Get the user object.$user = get_userdata( $user_id );// Get all the user roles as an array.$user_roles = $user->roles;// Check if the role you're interested in, is present in the array.if ( in_array( 'subscriber', $user_roles, true ) ) {    // Do something.    echo 'YES, User is a subscriber';}


hello try this optimal code

if (get_userdata($post->post_author)->roles[0] == 'your_specified_role'){   echo 'role exist';}else{   echo 'role does not exist';}