如何取消静音(并关闭自动播放)twentyseventeen 的 YouTube 视频?
How can I unmute (and turn off autoplay) a YouTube video for twentyseventeen?
我有 a lecture on YouTube that I would like to use as the header movie for my twentyseventeen child themed website. 我想要它有声但没有自动播放。 (在 Youtube 上观看时,视频的声音完好无损。)
在 [这个关于自动播放的问题] 之后,我设置了 https://www.youtube.com/watch?v=1dYAYBNU6qM&autoplay=0 的视频 URL。行为似乎没有改变。它立即开始,但声音是静音的。
对于 twentyseventeen,如果用户点击 'Play' 按钮,我如何选择开始暂停并开始播放的媒体文件?
谢谢,
您可以使用 global
对象 wp
来访问 youtube 播放器功能。 twentyseventeen theme
中的 Youtube 视频加载 wp-custom-header.js 文件并在 384 行中创建新对象。
您可以使用以下解决方案:
var ww_timer = setTimeout(function ww_video() {
if(wp.customHeader.handlers.youtube.player == null){
ww_timer = setTimeout(ww_video, 50);
}else {
if(typeof wp.customHeader.handlers.youtube.player.unMute === "function") {
wp.customHeader.handlers.youtube.player.unMute();
wp.customHeader.handlers.youtube.player.stopVideo();
}else{
ww_timer = setTimeout(ww_video, 50);
}
}
}, 50);
此代码转到 my_js.js
文件(我在活动子主题的主目录中创建它。您可以将此代码添加到另一个 .js
,如果有的话)您的活动子主题主题。此外,我们需要使用此代码更新 functions.php
文件:
function ww_youtube_functions(){
wp_enqueue_script('ww_youtube_video',get_stylesheet_directory_uri().'/my_js.js',array('wp-custom-header'),false, true);
}
add_action('wp_enqueue_scripts', 'ww_youtube_functions');
此代码的必需部分是 array('wp-custom-header')
:使依赖于脚本的脚本入队 wp-custom-header
。
setTimeout
不是最好的方法。我相信,它可以用更优雅的代码来完成。
但是它已经过测试并且可以正常工作。
我有 a lecture on YouTube that I would like to use as the header movie for my twentyseventeen child themed website. 我想要它有声但没有自动播放。 (在 Youtube 上观看时,视频的声音完好无损。)
在 [这个关于自动播放的问题] 之后,我设置了 https://www.youtube.com/watch?v=1dYAYBNU6qM&autoplay=0 的视频 URL。行为似乎没有改变。它立即开始,但声音是静音的。
对于 twentyseventeen,如果用户点击 'Play' 按钮,我如何选择开始暂停并开始播放的媒体文件?
谢谢,
您可以使用 global
对象 wp
来访问 youtube 播放器功能。 twentyseventeen theme
中的 Youtube 视频加载 wp-custom-header.js 文件并在 384 行中创建新对象。
您可以使用以下解决方案:
var ww_timer = setTimeout(function ww_video() {
if(wp.customHeader.handlers.youtube.player == null){
ww_timer = setTimeout(ww_video, 50);
}else {
if(typeof wp.customHeader.handlers.youtube.player.unMute === "function") {
wp.customHeader.handlers.youtube.player.unMute();
wp.customHeader.handlers.youtube.player.stopVideo();
}else{
ww_timer = setTimeout(ww_video, 50);
}
}
}, 50);
此代码转到 my_js.js
文件(我在活动子主题的主目录中创建它。您可以将此代码添加到另一个 .js
,如果有的话)您的活动子主题主题。此外,我们需要使用此代码更新 functions.php
文件:
function ww_youtube_functions(){
wp_enqueue_script('ww_youtube_video',get_stylesheet_directory_uri().'/my_js.js',array('wp-custom-header'),false, true);
}
add_action('wp_enqueue_scripts', 'ww_youtube_functions');
此代码的必需部分是 array('wp-custom-header')
:使依赖于脚本的脚本入队 wp-custom-header
。
setTimeout
不是最好的方法。我相信,它可以用更优雅的代码来完成。
但是它已经过测试并且可以正常工作。