Как загрузить mediaelement.js в шаблоне темы?

Вопрос или проблема

Я разрабатываю тему, ориентированную на видео. Мне нужно включить встроенный видеоплеер WordPress в мой шаблон страницы. Вот что я делаю:

  1. $video url приходит из пользовательского поля. Он выводит url файла видео http://example.com/video.mp4

  2. do_shortcode() выводит стандартный шорткод, используемый в записях/страницах.

    $video = get_field( "video_file_url");
    echo do_shortcode(''.$video.'');

Вот что я получаю:
введите описание изображения здесь
Цвет панели управления светлый (не темный, как в стандартном плеере WP), и нет кнопки воспроизведения в центре видео.

Я хочу добиться стандартного темного видеоплеера WordPress с кнопкой воспроизведения посередине.

Я полагаю, что мне нужно загрузить mediaelement.js в footer.php моей темы. Я разрабатываю тему с нуля и ничего не делал с mediaelement. Может быть, это причина, по которой я получаю светлый видеоплеер?

Как я могу вывести стандартный видеоплеер в шаблоне?

Я включил wp_head(); в начале моего файла header.php. wp_footer(); был включен в конце файла footer.php.

Неудача в их включении привела к проблеме с видеоплеером. Все работает нормально после добавления wp_head(); и wp_footer();.

Спасибо, birgire!

Ответ или решение

Чтобы загрузить mediaelement.js в шаблоне темы WordPress, вы можете следовать следующему пошаговому руководству. Это позволит вам использовать стандартный видеоплеер WordPress, который включает в себя функционал, необходимый для воспроизведения видео.

Шаг 1: Подключение необходимых хук-функций

Убедитесь, что в вашем header.php и footer.php подключены хуки wp_head() и wp_footer(). Они необходимы для корректной работы скриптов и стилей, которые подключает WordPress. Это то, что вы уже сделали, что устранило вашу проблему с видеоплеером.

<!-- header.php -->
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
    <meta charset="<?php bloginfo( 'charset' ); ?>">
    <?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<!-- footer.php -->
    <?php wp_footer(); ?>
</body>
</html>

Шаг 2: Загрузка MediaElement.js

Ваша следующая задача – корректно загрузить библиотеку mediaelement.js. Это можно сделать с помощью функции wp_enqueue_script и wp_enqueue_style в вашем functions.php файле:

function my_theme_enqueue_scripts() {
    // Подключаем медиаэлемент
    wp_enqueue_media();
    wp_enqueue_script('mediaelement');
    wp_enqueue_style('mediaelement'); 

    // Ваши дополнительные стили и скрипты могут быть добавлены здесь.
}
add_action('wp_enqueue_scripts', 'my_theme_enqueue_scripts');

Шаг 3: Использование Shortcode для вывода видео

Если ваш URL видео хранится в кастомном поле, вам нужно правильно выводить его с помощью шорткода. Убедитесь, что вы используете do_shortcode правильно. Вот пример кода, который вы можете использовать:

$video_url = get_field("video_file_url"); // Получаем URL видео из кастомного поля
if ($video_url) {
    echo do_shortcode('<a class="wp-embedded-video" href="' . esc_url($video_url) . '">' . esc_html($video_url) . '</a>');
}

Шаг 4: Настройка CSS для стандартного плеера

Если вы хотите, чтобы ваш видеоплеер выглядел как стандартный темный плеер WordPress, убедитесь, что у вас установлен правильный CSS стилевой файл. Если необходимый стиль не загружается, вы можете добавить следующее в ваш файл стилей:

.mejs-container {
    background-color: #000; /* Цвет фона плеера */
}

Шаг 5: Проверка результатов

После выполнения всех вышеперечисленных шагов проверьте страницу с видеоплеером. Он должен отображаться с темным фоном и кнопкой воспроизведения в центре.

Заключение

Теперь вы успешно загрузили mediaelement.js и скорректировали свой видеоплеер на WordPress. Важно всегда проверять, что wp_head() и wp_footer() находятся в правильных местах, чтобы избежать проблем с загрузкой ресурсов. Если у вас возникнут дополнительные проблемы, проверьте консоль разработчика в браузере на наличие ошибок или предупреждений.

Такой подход обеспечит значительно улучшенную работу с видеоплеером, соответствующим стандартам WordPress, и повысит общее качество вашего видеоориентированного шаблона.

Оцените материал
Добавить комментарий

Капча загружается...