Видео-крошки (video breadcrumbs) — это элемент навигации, который помогает пользователям и поисковым системам лучше ориентироваться в структуре видео-контента на сайте. Особенно актуально для сайтов с большим количеством видео, например на omni-video.ru, где важна удобная навигация и SEO-оптимизация. В этой статье мы подробно разберём, как создать автоматические видео-крошки в WordPress, используя как готовые плагины, так и собственный код.
Зачем нужны видео-крошки и как они влияют на SEO
Видео-крошки помогают пользователю понять, где он находится в структуре сайта и быстро вернуться к предыдущим разделам. Например, если вы смотрите видеоурок, крошки покажут путь: Главная > Категория > Серия видео > Текущий ролик. Это упрощает навигацию и увеличивает время пребывания на сайте.
С точки зрения SEO, крошки позволяют поисковикам лучше индексировать страницы и понимать их иерархию, что положительно влияет на ранжирование. Кроме того, в результатах поиска Google иногда отображает крошки, что повышает кликабельность сниппета.
Для сайтов с видео это особенно важно, так как видео-контент сам по себе требует дополнительной структуризации и описания.
Использование плагинов для создания видео-крошек
Плагин Breadcrumb NavXT с настройкой для видео
Один из самых популярных плагинов для создания крошек — Breadcrumb NavXT. Он гибко настраивается и поддерживает вывод крошек в любом месте сайта.
Для видео-контента можно настроить отдельный шаблон крошек, учитывающий категории видео, серии и т.д. После установки и активации плагина:
- Перейдите в Настройки > Breadcrumb NavXT
- В разделе «Типы записей» выберите тип записи для видео (например, custom post type «video»)
- Настройте шаблон крошек с учётом иерархии видео: %home% » %category% » %series% » %title%
Далее вставьте вызов крошек в шаблон single-video.php или в нужное место темы:
<?php if(function_exists('breadcrumb_navxt')) breadcrumb_navxt(); ?>Так вы получите полностью автоматические крошки для каждого видео на сайте.
Плагин OmniVideo и интеграция с крошками
Если вы используете плагин OmniVideo, он позволяет создавать видео-серии и плейлисты, что отлично сочетается с крошками.
Для интеграции OmniVideo с крошками можно воспользоваться хуками плагина и добавить нужные уровни в цепочку крошек, например, серию видео.
Создание автоматических видео-крошек с помощью кода
Если вы хотите полностью контролировать вывод крошек и не использовать плагины, можно написать свою функцию. Ниже пример простой функции omni_video_breadcrumbs(), которая выводит крошки для видео с учётом категорий и серий.
function omni_video_breadcrumbs() {
global $post;
if ( 'video' !== get_post_type( $post ) ) {
return;
}
$home_link = home_url('/');
echo '<nav class="breadcrumbs">';
echo '<a href="' . esc_url($home_link) . '">Главная</a> » ';
$categories = get_the_terms( $post->ID, 'video_category' );
if ( $categories && ! is_wp_error( $categories ) ) {
$cat = $categories[0];
$cat_link = get_term_link( $cat );
echo '<a href="' . esc_url($cat_link) . '">' . esc_html($cat->name) . '</a> » ';
}
$series = get_the_terms( $post->ID, 'video_series' );
if ( $series && ! is_wp_error( $series ) ) {
$ser = $series[0];
$ser_link = get_term_link( $ser );
echo '<a href="' . esc_url($ser_link) . '">' . esc_html($ser->name) . '</a> » ';
}
echo '<span>' . get_the_title() . '</span>';
echo '</nav>';
}Эту функцию можно вызвать в шаблоне single-video.php сразу после заголовка видео. Она автоматически построит цепочку из главной страницы, категории, серии и названия видео.
Регистрация таксономий для видео
Для работы вышеуказанной функции нужно иметь таксономии video_category и video_series, которые можно зарегистрировать так:
function omni_video_register_taxonomies() {
register_taxonomy( 'video_category', 'video', array(
'hierarchical' => true,
'label' => 'Категории видео',
'rewrite' => array('slug' => 'video-category'),
) );
register_taxonomy( 'video_series', 'video', array(
'hierarchical' => true,
'label' => 'Серии видео',
'rewrite' => array('slug' => 'video-series'),
) );
}
add_action( 'init', 'omni_video_register_taxonomies' );Это позволит гибко структурировать видео по категориям и сериям, что важно и для пользователя, и для SEO.
Дополнительные советы по улучшению видео-крошек
Использование Schema.org разметки для видео-крошек
Для лучшего восприятия поисковыми системами рекомендуется добавить микроразметку Schema BreadcrumbList. Это позволит Google и другим поисковикам корретно отображать крошки в выдаче.
Пример добавления разметки:
function omni_video_breadcrumbs_schema() {
global $post;
if ( 'video' !== get_post_type( $post ) ) return;
$items = array();
$items[] = array('name' => 'Главная', 'url' => home_url('/'));
$categories = get_the_terms( $post->ID, 'video_category' );
if ( $categories && ! is_wp_error( $categories ) ) {
$cat = $categories[0];
$items[] = array('name' => $cat->name, 'url' => get_term_link($cat));
}
$series = get_the_terms( $post->ID, 'video_series' );
if ( $series && ! is_wp_error( $series ) ) {
$ser = $series[0];
$items[] = array('name' => $ser->name, 'url' => get_term_link($ser));
}
$items[] = array('name' => get_the_title(), 'url' => get_permalink());
echo '<script type="application/ld+json">' . json_encode(array(
'@context' => 'https://schema.org',
'@type' => 'BreadcrumbList',
'itemListElement' => array_map(function($item, $index) {
return array(
'@type' => 'ListItem',
'position' => $index + 1,
'name' => $item['name'],
'item' => $item['url'],
);
}, $items, array_keys($items))
)) . '</script>';
}
add_action( 'wp_head', 'omni_video_breadcrumbs_schema' );Кэширование и производительность
Если у вас много видео и сложная иерархия, для повышения производительности стоит кэшировать результат функции крошек с помощью Transients API или сторонних кэш-плагинов. Это снизит нагрузку на сервер и ускорит загрузку страниц.
Пример кэширования результата:
function omni_video_breadcrumbs_cached() {
$cache_key = 'omni_video_breadcrumbs_' . get_the_ID();
$breadcrumbs = get_transient( $cache_key );
if ( false === $breadcrumbs ) {
ob_start();
omni_video_breadcrumbs();
$breadcrumbs = ob_get_clean();
set_transient( $cache_key, $breadcrumbs, 12 * HOUR_IN_SECONDS );
}
echo $breadcrumbs;
}Итоговые рекомендации
Создание автоматических видео-крошек — важная задача для сайтов с большим видео-контентом. Выбор между плагином и собственным решением зависит от ваших целей и навыков. Плагин Breadcrumb NavXT и интеграция с OmniVideo позволяют быстро и качественно реализовать навигацию, а собственный код даёт полный контроль и гибкость.
Не забывайте о микроразметке и кэшировании для максимальной эффективности и производительности.