show_admin_bar
Позволяет показать или скрыть панель администратора (тулбар) на фронт-энде. Хук работает только на фронте, т.е. НЕ работает в админке.

Также есть функция show_admin_bar(), которая получает/устанавливает глобальную переменную $show_admin_bar, которая пропускается через этот хук-фильтр.
Таким образом, этот хук имеет больший приоритет над функцией show_admin_bar().
См. также 11 хаков для тулбара WordPress.
Использование
add_filter( 'show_admin_bar', 'wp_kama_show_admin_bar_filter' );
/**
* Function for `show_admin_bar` filter-hook.
*
* @param bool $show_admin_bar Whether the admin bar should be shown.
*
* @return bool
*/
function wp_kama_show_admin_bar_filter( $show_admin_bar ){
// filter...
return $show_admin_bar;
}
- $show_admin_bar(true|false)
- Должна ли отображаться панель администратора (toolbar).
По умолчанию: false
Примеры
#1 Простой пример отключить или включить админ бар
Отключаем админ бар:
// Отключаем админ бар add_filter( 'show_admin_bar', '__return_false' );
Включить админ бар:
// Включить админ бар add_filter( 'show_admin_bar', '__return_true' );
#2 Отобразим админбар во фронтенде только для редактора
Этот код учитывает, что переменная $show_admin_bar может быть уже отключена, тогда никаких лишних проверок делаться не будет.
add_filter( 'show_admin_bar', 'admin_bar_for_admin_only', 99 );
function admin_bar_for_admin_only( $show_admin_bar ) {
if ( $show_admin_bar && ! current_user_can( 'edit_others_posts' ) ) {
$show_admin_bar = false;
}
return $show_admin_bar;
} #3 Как отключить админ-бар в админ-панели
Админ бар для админ панели имеет очень важное значение, поэтому этот хук влияет только на работу тулбара во фронт-энде. Но если все же нужно отключить тулбар в админке, то можно использовать такой хак:
// Отключаем админ бар в админ панели remove_action( 'in_admin_header', 'wp_admin_bar_render', 0 );
Список изменений
| С версии 3.1.0 | Введена. |
Где вызывается хук
$show_admin_bar = apply_filters( 'show_admin_bar', $show_admin_bar );