ловушка body_class для страниц администратора


16

Хук body_class, похоже, работает только со страницами без прав администратора. Когда я делаю

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

Есть ли еще один хук, который я должен использовать, если я хочу добавить класс в тело страницы администратора?

Ответы:


19

Страницы администратора не используют body_classфильтр, используйте admin_body_classфильтр для добавления классов в тег тела администратора.


9
Стоит отметить , что параметр $ классов в методе для admin_body_class фильтра является строка , а не массив developer.wordpress.org/reference/hooks/admin_body_class
Roman Epicnerd Sharf

13

Ответ Mamaduka указал мне правильное направление , вот код для добавления классов в тело на панели инструментов.

Функция обратного вызова должна возвращать допустимое значение для атрибута класса HTML, то есть имен классов, разделенных пробелами, также не забывайте добавлять (или добавлять) любые существующие классы, вы должны понимать это, читая код.

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
Вероятно, это должен быть выбранный ответ. Исходная реализация Asker возвращает массив, но ловушка принимает строку, разделенную пробелами: https://developer.wordpress.org/reference/hooks/admin_body_class/ . Таким образом, выбранный ответ вводит в заблуждение, поскольку он лишь частично отвечает на вопрос и не дает никаких ссылок.
pwbred

Чтобы сделать PHP более простым для реализации, если вы не программист, без использования строк внутри двойных кавычек - это то же самое, что иreturn $classes.' my-class my-other-class';
Jonas Lundman

Я использую return sprintf('%s folded', $classes);согласно моему удобству.
Бесрабасец

-1

один из хуков, которые я использую для редактирования WP admin / Dashboard admin_head

    function remove_screen_options(){ 

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

} 

Поместит CSS в вашу админку

А с помощью класса .wp-admin вы можете стилизовать часть тела администратора.

Удачи

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.