/ / Wordpress: obtener el rol de usuario actual - wordpress, función

Wordpress: obtener el rol de usuario actual - wordpress, function

Tengo esta función para agregar el rol de usuario actual como una clase en el cuerpo.

add_filter( "body_class", "custom_class" );
function custom_class( $classes ) {
$classes[] = get_user_role();

return $classes;
}

No funciona y sé que el problema es get_user_role() en esta linea:

 $classes[] = get_user_role();

¿Qué hay de malo en esta línea?

Si uso esta línea en su lugar, funciona bien:

 $classes[] = "someText";

Respuestas

1 para la respuesta № 1

no puedo encontrar la función get_user_role () en wordpress

Creo que estas buscando

$current_user = wp_get_current_user();

y puede señalar el nombre para mostrar de ese usuario como

$current_user->display_name

y en la función de clase corporal

add_filter( "body_class", "custom_class" );
function custom_class( $classes ) {
$classes[] = $current_user->display_name;

return $classes;
}

0 para la respuesta № 2

Por favor, intente el siguiente código:

function get_current_user_role() {
if(is_user_logged_in()) {
$user = wp_get_current_user();
$role = (array) $user->roles;
return $role[0];
}
else {
return false;
}
}

-1 para la respuesta № 3

puedes intentar usar este código

  function custom_class($classes) {
global $current_user;
$user_role = array_shift($current_user->roles);
$classes[] = $user_role;
return $classes;
}
add_filter("body_class","custom_class");