wp_footer хук-подіяWP 1.5.1

Спрацьовує у підвалі сторінки. На момент цієї події зазвичай підключаються скрипти, стилі тощо. Це один із основних хуків теми!

Окрім теми, ця подія активно використовується самим WordPress та багатьма плагінами.

Ця подія викликається однойменною функцією wp_footer() , яка у свою чергу викликається у файлі теми footer.php .

Виклик функції wp_footer() є обов’язковим для всіх тем (шаблонів) WordPress! Робиться так:

    ...
	<?php wp_footer(); ?>
</body>
</html>

На момент цієї події спрацьовує дуже багато «рідних» функцій WordPress. Наприклад, одна з таких функцій додає підключені через wp_enqueue_script() скрипти, для яких зазначено підключення у підвалі.

Що спрацьовує на цьому хуку у фронтенді (за замовчуванням у WordPress):

add_action( 'wp_footer', 'wp_print_footer_scripts', 20);
add_action( 'wp_print_footer_scripts', '_wp_footer_scripts');
add_action( 'wp_footer', 'wp_admin_bar_render', 1000);

Є ще одна аналогічна подія – wp_head() в HEAD частині документа, у файлі header.php .

Використання

add_action( 'wp_footer', 'wp_kama_footer_action');

/**
 * Function for `wp_footer` action-hook.
 *
 * @return void
 */
function wp_kama_footer_action(){

	// action...
}

Приклади

0

#1 Виведемо довільний JS код у підвалі

Це демонстрація того, як можна вивести JS код наприкінці HTML коду на будь-якій сторінці сайту:

## JS в кінці документа
add_action( 'wp_footer', 'hook_javascript', 99);
function hook_javascript(){
	?>
	<script> alert('Page are loaded.'); </script>
	<?php
}

Або можна так (так навіть правильніше, тому що одразу встановлено пріоритет побільше – 20):

## JS в кінці документа
add_action( 'wp_print_footer_scripts', 'hook_javascript');
function hook_javascript(){
	?>
	<script> alert('Page are loaded.'); </script>
	<?php
}
0

#2 Додамо HTML код у підвал

Допустимо нам потрібно на всіх сторінках додати HTML код попапа:

<?php
add_action( 'wp_footer', 'my_popup', 30);
function my_popup(){
	?>
	<div id="my_popup" class="popup mfp-hide">
		<div class="popup_inner">
			<div class="popup_body">
				<div class="popup_content"></div>
			</div>
		</div>
	</div>
	<?php
}

список змін

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

Де викликається хук

wp_footer

wp-includes/general-template.php 3058

do_action( 'wp_footer');

Де використовується хук у WordPress

wp-includes/class-wp-customize-widgets.php 1172

add_action( 'wp_footer', array( $this, 'export_preview_data' ), 20);

wp-includes/default-filters.php 342

add_action( 'wp_footer', 'wp_print_footer_scripts', 20);

wp-includes/default-filters.php 626

add_action( 'wp_footer', 'wp_admin_bar_render', 1000); // Back-compat for themes не використовує `wp_body_open`.

wp-includes/default-filters.php 679

add_action( 'wp_footer', 'the_block_template_skip_link');

wp-includes/media.php 2607

add_action( 'wp_footer', 'wp_underscore_playlist_templates', 0);

wp-includes/media.php 4634

add_action( 'wp_footer', 'wp_print_media_templates');

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

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