has_header_video()
Перевіряє чи завантажено відео для заголовка в налаштуваннях теми (кастомайзер).
Можливість додавати відео заголовка теми з’явилася у версії 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()
(дуже швидко) | 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; }
Приклади
#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>
нотатки
- Дивіться: get_header_video_url()
список змін
З версії 4.7.0 | Введено. |
Код has_header_video() has header video WP 6.0.2
function has_header_video() { return (bool) get_header_video_url(); }