it-swarm.com.de

Wie ziele ich mit CSS, Admin-Elementen nach Benutzerrollenebene?

Ich verwende die Plugins "Capability Manager Enhanced" und "Adminimize". Zwischen diesen beiden war ich in der Lage, viel von dem zu tun, was ich tun möchte.

Es gibt immer noch einige Elemente, die ich verstecken muss und die ich mit CSS gezielt einsetzen konnte.

Das Problem ist, dass diese Elemente auf allen Administratorebenen verborgen sind.

Ist etwas eingebaut, das die verschiedenen Rollenebenen im Administrator unterscheidet?

Ich denke, der beste Weg, dies zu tun, wäre, dem Body-Tag eine Klasse entsprechend der Rollenebene bei der Anmeldung hinzuzufügen - wie zum Beispiel "author" -Klasse, wenn die Anmelderollenebene "author" ist.

Wenn dies der beste Weg ist, würde ich nicht wissen, wie man den Code dazu schreibt. Ich nehme an, es wäre eine PHP-Ergänzung zu function.php. ???

4
Bob Nelson

Mit dem Filter admin_body_class können Sie dem Body-Tag Klassen hinzufügen.

Diese Funktion fügt dem Body-Tag alle Rollen als Klassen in der Form role-$role hinzu, zum Beispiel role-administrator:

function wpa66834_role_admin_body_class( $classes ) {
    global $current_user;
    foreach( $current_user->roles as $role )
        $classes .= ' role-' . $role;
    return trim( $classes );
}
add_filter( 'admin_body_class', 'wpa66834_role_admin_body_class' );
5
Milo