gancho body_class para páginas de administração

16

O gancho body_class parece funcionar apenas com páginas não administrativas. Quando eu faço

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

Existe outro gancho que devo usar se quiser adicionar uma classe ao corpo de uma página de administrador?

ltfishie
fonte

Respostas:

19

As páginas de administrador não usam o body_classfiltro, use o admin_body_classfiltro para adicionar classes à tag do corpo do administrador.

Mamaduka
fonte
9
É importante notar que o parâmetro $ aulas no método para o filtro admin_body_class é uma string e não um array developer.wordpress.org/reference/hooks/admin_body_class
Roman Epicnerd Sharf
13

A resposta Mamaduka me indicou a direção certa , eis o código para adicionar classes ao corpo no painel.

A função de retorno de chamada deve retornar um valor válido para o atributo de classe HTML, ou seja, nomes de classe separados por espaço. Além disso, não esqueça de acrescentar (ou acrescentar) quaisquer classes existentes, você deve entender lendo o código.

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";
}
Nabil Kadimi
fonte
11
Provavelmente essa deve ser a resposta selecionada. A implementação original do Asker retorna uma matriz, mas o gancho aceita uma cadeia de caracteres separada por espaço: https://developer.wordpress.org/reference/hooks/admin_body_class/ . A resposta selecionada é, portanto, enganosa, pois responde apenas parcialmente à pergunta e não fornece referência.
pwbred
Para fazer o PHP mais fácil de implementar, se você não for um programador, sem usar cordas dentro de aspas doubble são os mesmosreturn $classes.' my-class my-other-class';
Jonas Lundman
Eu uso return sprintf('%s folded', $classes);conforme minha conveniência.
besrabasant
-1

um dos ganchos que eu uso para editar o WP admin / Dashboard admin_head

    function remove_screen_options(){ 

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

} 

Colocará o css na sua parte de administrador

E usando a classe .wp-admin, você pode estilizar a parte do corpo do admin.

Boa sorte

alex
fonte