body_class-Hook für Admin-Seiten


16

Der body_class-Hook scheint nur mit Seiten zu funktionieren, die keine Administratoren sind. Wenn ich es tue

add_filter('body_class', 'add_body_classes');
function add_body_classes($classes) {
        $classes[] = 'myclass';
        return $classes;
}

Gibt es einen anderen Haken, den ich verwenden sollte, wenn ich dem Hauptteil einer Admin-Seite eine Klasse hinzufügen möchte?

Antworten:



13

Die Antwort von Mamaduka wies mich in die richtige Richtung . Hier ist der Code zum Hinzufügen von Klassen zum Textkörper im Dashboard.

Die Rückruffunktion sollte einen gültigen Wert für das HTML-Klassenattribut zurückgeben, d. H. Durch Leerzeichen getrennte Klassennamen. Vergessen Sie auch nicht, vorhandene Klassen voranzustellen (oder anzuhängen). Sie sollten dies verstehen, indem Sie den Code lesen.

add_filter( 'admin_body_class', 'my_admin_body_class' );

/**
 * Adds one or more classes to the body tag in the dashboard.
 *
 * @link /wordpress//a/154951/17187
 * @param  String $classes Current body classes.
 * @return String          Altered body classes.
 */
function my_admin_body_class( $classes ) {
    return "$classes my_class";
    // Or: return "$classes my_class_1 my_class_2 my_class_3";
}

1
Dies sollte wahrscheinlich die ausgewählte Antwort sein. Die ursprüngliche Implementierung von Asker gibt ein Array zurück, der Hook akzeptiert jedoch eine durch Leerzeichen getrennte Zeichenfolge: https://developer.wordpress.org/reference/hooks/admin_body_class/ . Die ausgewählte Antwort ist daher irreführend, da sie die Frage nur teilweise beantwortet und keinen Hinweis enthält.
— pwbred

Damit PHP einfacher zu implementieren ist, wenn Sie kein Programmierer sind, ohne Zeichenfolgen in doppelten Anführungszeichen zu verwenden, ist es dasselbe wiereturn $classes.' my-class my-other-class';
— Jonas Lundman

Ich benutze return sprintf('%s folded', $classes);nach meinem Belieben.
— Besrabasant

-1

Einer der Hooks, mit denen ich WP admin / Dashboard admin_head bearbeite

    function remove_screen_options(){ 

    $hideCSS = '<style>#screen-meta-links { display: none; }</style>';

} 

Wird die CSS in Ihrem Admin-Teil setzen

Und mit der Klasse .wp-admin können Sie den Hauptteil von admin gestalten.

Viel Glück

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.