is_admin_bar_showing() — проверяет, нужно ли отображать админ панель

Условный тег, возвращает true, если на данной странице и для данного пользователя нужно отображать админ панель. Если пользователь не залогинен, или у него в настройках отключена админ панель, или он находится на странице wp-login.php, то возвращает false.

is_admin_bar_showing()

Функция не имеет параметров.

Простой пример:

if( is_admin_bar_showing() ) {
	// делаем что-то, если админ панель отображается
} else {
	// делаем другое, если ее нет на этой странице
}

Фильтр show_admin_bar. Правильный способ отключения админ панели.

$show_admin_bar = apply_filters( 'show_admin_bar', $show_admin_bar );

Для того, чтобы отключить панель для всех пользователей при просмотре сайта, нужно передать в данный фильтр значение false, это можно сделать, вставив следующий код в functions.php вашей темы:

add_filter('show_admin_bar', '__return_false');

Либо так (аналогичный вариант):

function true_return_false(){
	return false;
}
 
add_filter('show_admin_bar', 'true_return_false');

Для админки данный способ не прокатит, там функция всегда возвращает true и не учитывает этот фильтр.

Теперь давайте попробуем скрыть админ панель для всех, кроме администраторов:

function true_return_false_not_for_admin(){
	if( !current_user_can('administrator') ) { 
		return false;
	} else {
		return true;
	}
}
 
add_filter('show_admin_bar', 'true_return_false_not_for_admin');

Миша

Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.

Пишите, если нужна помощь с сайтом или разработка с нуля.

Чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или войдите.

Миша Рудрастых и WordPress

Полезности из мира WordPress и жизни студии.

Мой телеграм-канал