将.wp-Video转换为浏览器的原生视频播放器

时间:2018-10-30 作者:Nekomajin42

是否可以仅使用浏览器的默认视频播放器而不使用mejs / wp-video 界面额外的加价给我带来了很多麻烦。我只想用<video> 元素,并使用CSS/JS处理我的自定义需求。

我不会说我是专家。我对自定义模板和挂钩有相当多的经验,但我无法理解这一点。

2 个回复
最合适的回答,由SO网友:Nekomajin42 整理而成

我找到了挖掘WP文档的正确方法:https://developer.wordpress.org/reference/hooks/wp_video_shortcode/

这段代码似乎起到了作用:

function buildVideoPlayer($output, $attr)
{
    // $output contains the default HTML string, created by the WP core
    // $attr is an associative array, which contains the parameters 
    // (src, poster, preload, etc.) specified in the shortcode

    // The following piece of HTML string will replace the default WP video player
    return "<video src=\'".$attr["mp4"]."\'></video>";
}
add_filter("wp_video_shortcode", "buildVideoPlayer", 10, 2);
确保传递要捕获的参数数量add_filter(). 默认值为1,但wp_video_shortcode 有4个,在这段代码中,我需要第二个。

SO网友:Friss

我会尝试使用embed_oembed_html filter

下面是一个非常基本的示例

add_filter(\'embed_oembed_html\',\'oembed_video_add_wrapper\',10,4);

function oembed_video_add_wrapper( $cache, $url, $attr, $post_ID) {
        return sprintf(\'<video src="%s">\',$url);
}

结束

相关推荐

Find Videos Inside a Post

确定帖子中可能嵌入的视频的有效方法是什么?如果将嵌入代码直接添加到帖子中,很容易确定是否使用正则表达式,但有些插件通过短代码或自定义字段嵌入视频。在这些情况下,实际的嵌入代码是在呈现帖子时添加的。