WordPress как на ладони
rgbcode is looking for WordPress developers. Очень Удобный и Быстрый Хостинг для сайтов на WordPress. Пользуюсь сам и вам рекомендую!

is_admin_bar_showing()WP 3.1.0

Проверяет будет ли показан (или уже показан) «Админ бар» (тулбар). То есть будет ли выведена панель админки для текущего пользователя. Условный тег.

Работает на основе: _get_admin_bar_pref()
Хуки из функции

Возвращает

true|false. Логические true или false. Возвращает false в случаях:

  • если пользователь не авторизован;

  • если показ "Админ Бара" отключен;

  • если показ админ бара не предусмотрен (на странице wp-login.php)

  • если "Админ Бар" отключен в коде: add_filter('show_admin_bar', '__return_false');

  • если это запрос (константы определены): XMLRPC_REQUEST или DOING_AJAX или IFRAME_REQUEST

В остальных случаях возвращает true. В админке всегда возвращает true.

Использование

if( is_admin_bar_showing() ){
	// админ бар выводится
}

Примеры

0

#1 Проверим есть ли Админ бар и сделаем что-либо

if( is_admin_bar_showing() ) {
	// код, если панель есть
}
else {
	// код, если панели нет
}

Заметки

  • Global. true|false. $show_admin_bar
  • Global. Строка. $pagenow The filename of the current screen.

Список изменений

С версии 3.1.0 Введена.

Код is_admin_bar_showing() WP 6.4.3

function is_admin_bar_showing() {
	global $show_admin_bar, $pagenow;

	// For all these types of requests, we never want an admin bar.
	if ( defined( 'XMLRPC_REQUEST' ) || defined( 'DOING_AJAX' ) || defined( 'IFRAME_REQUEST' ) || wp_is_json_request() ) {
		return false;
	}

	if ( is_embed() ) {
		return false;
	}

	// Integrated into the admin.
	if ( is_admin() ) {
		return true;
	}

	if ( ! isset( $show_admin_bar ) ) {
		if ( ! is_user_logged_in() || 'wp-login.php' === $pagenow ) {
			$show_admin_bar = false;
		} else {
			$show_admin_bar = _get_admin_bar_pref();
		}
	}

	/**
	 * Filters whether to show the admin bar.
	 *
	 * Returning false to this hook is the recommended way to hide the admin bar.
	 * The user's display preference is used for logged in users.
	 *
	 * @since 3.1.0
	 *
	 * @param bool $show_admin_bar Whether the admin bar should be shown. Default false.
	 */
	$show_admin_bar = apply_filters( 'show_admin_bar', $show_admin_bar );

	return $show_admin_bar;
}
2 комментария
    Войти