/**
* Checks user role(s).
*
* @see https://wpcodebook.com/wordpress-check-user-role/
*
* @param string|array $user_role User role(s). Use `guest` to check for the non-logged users.
* @param int $user_id User ID. Set to zero for the current user.
* @return bool
*/
function wpcodebook_is_user_role( $user_role, $user_id = 0 ) {
$user = ( $user_id ? get_user_by( 'id', $user_id ) : wp_get_current_user() );
$user_roles = ( ! empty( $user->roles ) && is_array( $user->roles ) ? $user->roles : array( 'guest' ) );
return ( is_array( $user_role ) ?
! empty( array_intersect( $user_role, $user_roles ) ) :
in_array( $user_role, $user_roles )
);
}