Хуки

omnivideo/assets/script_options 1.1.0

Позволяет поменять параметры для скрипта

/**
 * Замена текста загрузки
 */
add_filter( 'omnivideo/assets/script_options', function ( $options ) {
    $options['i18n']['loading'] = __( 'Looking for resources...' );

    return $options;
} );

omnivideo/locate_template/located 1.0.0

Позволяет заменить положение файла шаблона

/**
 * Изменение местоположения файла шаблона. Необходимо для кастомизации содержимого файла.
 */
add_filter( 'omnivideo/locate_template/located', function ( $located, $template_name, $args ) {
    if ( 'omnivideo-block.php' === $template_name ) {
        $located = '/your/new/path/omnivideo-block.php';
    }

    return $located;
}, 10, 3 );

omnivideo/functions/get_platforms 1.1.0

Позволяет поменять список доступных платформ

/**
 * Удаление Nuum из поддерживаемых платформ.
 */
add_filter( 'omnivideo/functions/get_platforms', function ( $platforms ) {
    return array_filter( $platforms, function ( $key ) {
        return $key !== 'nuum';
    }, ARRAY_FILTER_USE_KEY );
} );

omnivideo/functions/get_icons 1.1.0

Позволяет добавить или модифицировать иконку

/**
 * Замена цвета иконки youtube на черный
 */
add_filter( 'omnivideo/functions/get_icons', function ( $icons ) {
    $icons['youtube']['color'] = '#000000';

    return $icons;
} );

omnivideo/auto_poster/enabled 1.0.0

Позволяет отключить автоматически постеры для индивидуальных платформ

/**
 * Отключение автоматических постеров для vimeo
 */
add_filter( 'omnivideo/auto_poster/enabled', function ( $services ) {
    $services['vimeo'] = false;

    return $services;
} );

omnivideo/poster_manager/youtube_base 1.1.0

Позволяет поменять базовый url для извлечения постера с youtube

/**
 * Замена базового url для извлечения постера с https://img.youtube.com/vi на https://i3.ytimg.com/vi
 */
add_filter( 'omnivideo/poster_manager/youtube_base', function () {
    return 'https://i3.ytimg.com/vi';
} );

omnivideo/poster_manager/youtube_poster_url 1.1.0

Позволяет заменить url полученного на youtube постера

/**
 * Замена url извлекаемого постера для указанного id youtube видео
 */
add_filter( 'omnivideo/poster_manager/youtube_poster_url', function ( $poster_url, $video_id ) {
    if ( $video_id === 'anyVideoId' ) {
        $poster_url = 'specific/poster/url';
    }

    return $poster_url;
}, 10, 2 );

omnivideo/poster_manager/youtube_retrieval_fn 1.1.0

Позволяет заменить функцию получения id видео с youtube ссылки

/**
 * Меняем логику получения id youtube видео из ссылки
 */
add_filter( 'omnivideo/poster_manager/youtube_retrieval_fn', function () {
    return function ( $url ) {
        // new logic of retrieving youtube video id from url
    };
} );

omnivideo/poster_manager/vimeo_retrieval_fn 1.1.0

Позволяет заменить функцию получения id видео с vimeo ссылки

/**
 * Меняем логику получения id видео из ссылки для vimeo
 */
add_filter( 'omnivideo/poster_manager/vimeo_retrieval_fn', function () {
    return function ( $url ) {
        // new logic of retrieving vimeo video id from url
    };
} );

omnivideo/block/atts 1.1.0

Позволяет поменять значения атрибутов для генерации блока

/**
 * Установить стиль 'simple-2' для всех автоматически замененных youtube видео
 */
add_filter( 'omnivideo/block/atts', function ( $atts ) {
    if ( doing_action( 'render_block' ) ) {
        $atts['style'] = 'simple-2';
    }

    return $atts;
} );

omnivideo/video_block/content 1.1.0

Позволяет модифицировать контент генерируемого блока

/**
 * Обернуть блок OmniVideo в кастомный div.custom-wrap-block
 */
add_filter( 'omnivideo/video_block/content', function ( $content ) {
    return '<div class="custom-wrap-block">' . $content . '</div>';
} );

omnivideo/video_block/microdata 1.1.0

Позволяет модифицировать данные микроразметки

/**
 * Отключить микроразметку
 */
add_filter( 'omnivideo/video_block/microdata', '__return_null' );

omnivideo/block/show_warnings 1.1.0

Позволяет включить поменять разрешение для показа ошибок

/**
 * Показывать предупреждения об ошибках только администратору
 */
add_filter( 'omnivideo/block/show_warnings', function () {
    return current_user_can( 'manage_options' );
} );

omnivideo/block/warnings 1.1.0

Позволяет модифицировать сообщения об ошибках.

/**
 * Добавить уведомление о том, что short не будет распознан, если используется embed-формат ссылок
 */
add_filter( 'omnivideo/block/warnings', function ( $warnings, $sources ) {
    if ( ! empty( $sources['youtube'] ) && false !== filter_var( $sources['youtube'], FILTER_VALIDATE_URL ) ) {
        if ( false !== strpos( $sources['youtube'], '/embed/' ) ) {
            $warnings[] = 'You are using a Youtube link in embed format. In this case shorts will not be recognized and will not be output in clip format';
        }
    }

    return $warnings;
}, 10, 2 );

omnivideo/video_block/icon 1.1.0

Позволяет модифицировать иконку

/**
 * Замена иконки play на свою
 */
add_filter( 'omnivideo/video_block/icon', function ( $icon, $name ) {
    if ( 'play' === $name ) {
        $icon = '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M448 0H64A64 64 0 000 64v384a64 64 0 0064 64h384a64 64 0 0064-64V64a64 64 0 00-64-64zm-39 273L273 409a24 24 0 11-34-34l95-95H120a24 24 0 010-48h214.06l-95-95A24 24 0 11273 103l136 136a24 24 0 010 34z" fill="currentColor"></path></svg>';
    }

    return $icon;
}, 10, 2 );

omnivideo/block/poster_lazy_loading 1.1.0

Позволяет отключить добавление атрибута loading=”lazy”

/**
 * Убираем атрибут loading="lazy" у постера
 */
add_filter( 'omnivideo/block/poster_lazy_loading', '__return_false' );