WordPress: Holen Sie sich die aktuelle Benutzerrolle

Lesezeit: 1 Minute

Ich habe diese Funktion, um die aktuelle Benutzerrolle als Klasse im Körper hinzuzufügen.

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

    return $classes;
}

Es funktioniert nicht und ich weiß, dass das Problem ist get_user_role() in dieser Zeile:

 $classes[] = get_user_role();

Was ist falsch an dieser Zeile?

Wenn ich stattdessen diese Zeile verwende, es funktioniert gut:

 $classes[] = "someText";

  • get_user_role() scheint es für WP nicht zu geben? – Hast du angenommen, dass dies eine echte WP-Funktion war oder ist es deine eigene benutzerdefinierte Funktion?

    – ProEvilz

    26. September 2017 um 11:05 Uhr


  • Ich dachte, es wäre eine wp-Funktion.

    – JPashs

    26. September 2017 um 11:15 Uhr

Benutzer-Avatar
realmag777

Bitte versuchen Sie den folgenden Code:

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;
   }
}

Ich kann die Funktion get_user_role() in WordPress nicht finden

Ich denke du suchst

$current_user = wp_get_current_user();

und Sie können auf den Anzeigenamen dieses Benutzers als hinweisen

$current_user->display_name

und in Körperklassenfunktion

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

return $classes;
}

Das ist, was ich benutze:

function my_body_classes( $classes ) {
global $current_user;
$classes[] = array_shift($current_user->roles);
}
add_filter('body_class', 'my_body_classes');

Funktioniert super!

Sie können versuchen, diesen Code zu verwenden

  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');

1227500cookie-checkWordPress: Holen Sie sich die aktuelle Benutzerrolle

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy