Скрыть панель инструментов в WordPress, в том числе в фоновом режиме, в том числе для администраторов

Я ищу программный способ скрыть верхнюю панель инструментов, которая отображается для зарегистрированных пользователей в WordPress.

Я пробовал некоторые вещи, которые я нашел на разных сайтах, но ничего не получалось, например:

show_admin_bar(false);

или же

add_filter('show_admin_bar', '__return_false');

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

Спасибо за любой совет!

ПРИМЕЧАНИЕ: я использую WordPress 4.0

2 ответа

Я бы порекомендовал скрыться с помощью CSS. Вы можете использовать фильтры, чтобы скрыть панель администратора для обычных пользователей, но вам потребуется CSS для администраторов.

#wpadminbar {
 display:none;
}

или же

.logged-in #wpadminbar {
   display: none;
}

Вы можете использовать ловушки действий wp_before_admin_bar_render а также wp_after_admin_bar_render инициировать и завершить захват выходного буфера, который можно просто отбросить, поскольку вы его не используете. PHP функции ob_start() а также ob_get_clean() может быть использован для этой цели. Обратите внимание, что CSS в админке оставит пустое место, где раньше находилась панель, подгоняйте с помощью пользовательского CSS.

if ( is_admin() ){
    add_action( 'wp_before_admin_bar_render', function(){ ob_start(); } );
    add_action( 'wp_after_admin_bar_render', function(){ ob_get_clean(); } );
} else {
    show_admin_bar( false );
    add_filter( 'show_admin_bar', '__return_false' );
}
Другие вопросы по тегам