wp_body_open()WP 5.2.0

Запускает хук wp_body_open. Нужно использовать в теме сразу после открывающего тега <body>.

С версии WP 5.2 эту функцию нужно использовать в теме (шаблоне), чтобы дать возможность разработчикам вставлять что-либо сразу после тега <body>.

Разработчики тем должны использовать следующие функции в темах:

Структура HTML кода будет следующая:

<html>
	<head>
		...

		<?php wp_head(); ?>
	</head>

	<body>
		<?php wp_body_open(); ?>
		...

		<?php wp_footer(); ?>
	</body>
</html>
Хуки из функции

Возвращает

null. Ничего (null).

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

<body <?php body_class(); ?>>

	<?php wp_body_open(); ?>

	...

Примеры

-1

#1 Выведем произвольное содержимое после тега body

Требуется вывести сообщение для неавторизованных пользователей с призывом авторизоваться.

Базовая структура шаблона, например index.php

<html>

<head>
	... содержимое head ...
</head>

<body>

	<?php wp_body_open(); ?>

	... остальная вёрстка сайта ...

</body>

</html>

Решение

<?php

add_action( 'wp_body_open', 'display_message_for_unauthorized_users' );
function display_message_for_unauthorized_users() {
	if ( ! is_user_logged_in() ):
	?>

		<div class="message-for-unauthorized-users">
			<p>
				Хотите получить больше возможностей?
				<a href="<?php echo wp_login_url(); ?>">Авторизуйтесь</a>!
			</p>
		</div>

	<?php
	endif;
}

Код вставляется в файл functions.php или оформляется в виде плагина:

На месте этого сообщения может быть что угодно: код счетчика Яндекс.Метрики, баннер, форма поиска и так далее.

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

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

Код wp_body_open() WP 6.5.2

function wp_body_open() {
	/**
	 * Triggered after the opening body tag.
	 *
	 * @since 5.2.0
	 */
	do_action( 'wp_body_open' );
}