is_header_video_active() WP 4.7.0
Проверяет нужно ли показать имеющееся видео заголовка на текущей странице. Условный тег.
С версии 4.7 появилась возможно устанавливать видео заголовка, в дополнении к картинке заголовка. Видео позволяет привлечь больше внимания и оставляет большее впечатление о сайте.
Эта функция отвечает за проверку на какой странице показывать такое видео. Такое видео по умолчанию показывается только на главной странице сайта см. is_front_page().
Функция вернет false если поддержка видео не включена, включается она так в functions.php темы:
get_theme_support( 'custom-header', array('video'=>true) );
Имейте ввиду, что эта функция не проверяет установлено ли видео заголовка, а проверят нужно ли его показывать. Чтобы проверить установлено ли видео заголовка используйте has_header_video()
Изменение проверки
Эта функция является оберткой для функции указанной в параметре video-active-callback, при регистрации поддержки add_theme_support('custom-header'). Допустим, при регистрации видео заголовка мы указали параметры так:
add_theme_support( 'custom-header', array( 'video' => true, 'video-active-callback' => 'is_home', ));
Тогда работа этой функции будет передаваться is_home() и то что вернет она вернет и эта функция.
Однако это поведение можно перебить через хук is_header_video_active. Через этот хук мы можем переопределить проверку и то что вернет эта функция. Например так:
add_filter( 'is_header_video_active', 'my_is_header_video_active' ); function my_is_header_video_active( $show_video ){ // Разрешим показ видео заголовка только на странице 'about' if( is_page('about') ) $show_video = true; else $show_video = false; return $show_video; }
И теперь is_header_video_active() будет всегда возвращать true на странице /about и false на всех остальных страницах. И не важно что установлено в параметре video-active-callback.
Хуки из функции
Возвращает
true/false. true - если видео должно показываться не текущей странице. false - в противном случае.
Использование
if( has_header_video() && is_header_video_active() ){ // ... }
Примеры
#1 Выведем видео заголовка
Проверим есть ли видео заголовка и должно ли оно выводиться на текущей странице. Если все ОК, то показываем плеер с проигрываемым видео.
## проверим есть ли видео заголовка и оно должно показываться на текущей странице. if( has_header_video() && is_header_video_active() ){ the_custom_header_markup(); // url на видео - get_header_video_url() }
В результате в месте этого кода появится HTML код видео плеера, и на страницу (в конце) будут подключены нужные для плеера скрипты:
<div id="wp-custom-header" class="wp-custom-header"> <video id="wp-custom-header-video" autoplay="" loop="" width="954" height="1300" src="http://wptest.ru/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 | Введена. |
Код is_header_video_active() is header video active WP 5.6
Cвязанные функции
Из метки: custom_header (настройки шапки темы: картинка цвет видео)
Еще из метки: Условные теги (все)
- cat_is_ancestor_of()
- comments_open()
- email_exists()
- has_block()
- has_category()
- has_excerpt()
- has_nav_menu()
- has_post_thumbnail()
- has_shortcode()
- has_tag()
- has_term()
- have_comments()
- have_posts()
- in_category()
- in_the_loop()
- is_404()
- is_active_sidebar()
- is_admin()
- is_admin_bar_showing()
- is_archive()
- is_attachment()
- is_author()
- is_blog_admin()
- is_blog_installed()
- is_category()
- is_child_theme()
- is_comment_feed()
- is_customize_preview()
- is_date()
- is_day()
- is_dynamic_sidebar()
- is_embed()
- is_feed()
- is_front_page()
- is_home()
- is_local_attachment()
- is_main_query()
- is_month()
- is_multi_author()
- is_multisite()
- is_nav_menu()
- is_network_admin()
- is_new_day()
- is_page()
- is_page_template()
- is_paged()
- is_plugin_active()
- is_post_type_archive()
- is_post_type_hierarchical()
- is_preview()
- is_robots()
- is_search()
- is_single()
- is_singular()
- is_ssl()
- is_sticky()
- is_tag()
- is_tax()
- is_taxonomy_hierarchical()
- is_textdomain_loaded()
- is_time()
- is_trackback()
- is_user_admin()
- is_user_logged_in()
- is_year()
- pings_open()
- post_exists()
- post_password_required()
- shortcode_exists()
- taxonomy_exists()
- term_exists()
- term_is_ancestor_of()
- wp_attachment_is()
- wp_attachment_is_image()
- wp_doing_ajax()
- wp_doing_cron()
- wp_is_mobile()
- wp_is_post_autosave()
- wp_is_post_revision()
- wp_script_is()
Еще из раздела: Другие функции темы
- add_theme_support()
- bloginfo()
- body_class()
- current_theme_supports()
- get_custom_logo()
- get_page_template()
- get_page_templates()
- get_post_class()
- get_query_template()
- get_stylesheet()
- get_template()
- get_theme_mod()
- get_theme_mods()