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 Filename of the current screen.

список змін

З версії 3.1.0Введено.

Код is_admin_bar_showing() WP 6.0.2

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

	// Для всіх цих типів питань, ми не можемо отримати 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 recommended way to hide the admin bar.
	 * 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;
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *