has_header_video() WP 4.7.0

Перевіряє чи завантажено відео для заголовка в налаштуваннях теми (кастомайзер).

Можливість додавати відео заголовка теми з’явилася у версії 4.7. Активується вона за допомогою add_theme_support(‘custom-header’);

Ця функція перевіряє лише наявність завантаженого відео, але не перевірять чи має це відео відображатися на сторінці, що переглядається. За промовчанням відео заголовка відображається лише на головному, а на інших сторінках відображається зображення заголовка. Зроблено так із зрозумілих причин: нема чого на кожній сторінці сайту підвантажувати відео в заголовку, тому що таке відео створюється в першу чергу для враження від сайту і негативно позначається на швидкості завантаження сторінки. І воно дратуватиме користувачів, якщо буде скрізь…

За те, на якій сторінці показується відео відповідає умовні тег is_header_video_active() . Використовувати цю функцію логічно з ним у зв’язці:

## перевіримо чи є відео заголовка і воно має відображатися на поточній сторінці.
if( has_header_video() && is_header_video_active() ){
	// Отримаємо посилання на відео
	$videourl = get_header_video_url();
}

Використовуйте has_header_image() , коли потрібно зробити таку ж перевірку, але тільки для зображення заголовка.

Використовуйте has_custom_header() , коли необхідно перевірити одночасно наявність відео або зображення для заголовка.

Працює на основі:
get_header_video_url()
Основа для:
has_custom_header()
1 раз – 0.000058 сек
(дуже швидко) | 50000 разів – 0.70 сек
(дуже швидко) |
PHP 7.1.1, WP 4.7.1

Хуків немає.

Повертає

true|false. Є відео чи ні.

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

if( has_header_video() ){
	// відео завантажено
}

Альтернатива одразу з отриманням URL відео:

if( $url = get_header_video_url() ){
	echo $url;
}

Приклади

0

#1 Виведемо відео заголовка

Перевіримо, чи є відео заголовка і чи має воно виводитися на поточній сторінці. Якщо все ОК, то показуємо плеєр з відео, що програється.

## перевіримо чи є відео заголовка і воно має відображатися на поточній сторінці.
if( has_header_video() && is_header_video_active() ){
	the_custom_header_markup();
}

В результаті в місці цього коду з’явиться HTML код відео програвача, і на сторінку (наприкінці) будуть підключені потрібні для програвача скрипти:

<div id="wp-custom-header" class="wp-custom-header">
	<video id="wp-custom-header-video" autoplay="" loop="" width="954" height="1300" src="http://example.com/wp-content/uploads/2017/ 01/polina.mp4"></video>
	<button type="button" id="wp-custom-header-video-button" class="wp-custom-header-video-button wp-custom-header-video-play">Пауза</button>
</div>

Скрипти у підвалі:

<script type='text/javascript' src='http://example.com/wp-includes/js/wp-custom-header.min.js'></script>

<script type='text/javascript' src='http://example.com/wp-includes/js/mediaelement/mediaelement-and-player.min.js'></script>

<script type='text/javascript' src='http://example.com/wp-includes/js/mediaelement/wp-mediaelement.min.js'></script>

нотатки

список змін

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

Код has_header_video() WP 6.0.2

function has_header_video() {
	return (bool) get_header_video_url();
}

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

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