【问题标题】:Youtube url parameter ?playlist=[video_id's] no longer workingYoutube url 参数 ?playlist=[video_id's] 不再工作
【发布时间】:2020-09-08 17:01:16
【问题描述】:

在我的网站上,我们有产品页面,员工可以在其中将 youtube 视频 ID 放入 CMS。这些 id 被保存到数据库中,然后在数组 $videos 中提取出来。

    <? php
    $youtube_url[0] = "https://www.youtube.com/embed/?rel=0&modestbranding=1&playlist=";
    $youtube_url[0] .= implode(",", $videos);
    ?>
    <iframe width="580" height="315" src=<?= $youtube_url[0] ?> frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

这会在 playlist= 之后列出的 Youtube ID 中创建一个临时播放列表,并且在过去一周左右的某个时间之前已经正常工作了近一年。有什么改变吗? ?playlist= 参数是否损坏?

【问题讨论】:

  • 你有没有问过 YouTube?
  • 我去了他们的网站并尝试寻求支持,它说要使用 youtube-iframe-api 标签创建一个堆栈交换帖子。这显然是他们想听到这个问题的唯一方式。看这里developers.google.com/youtube/players/support

标签: youtube-iframe-api


【解决方案1】:

如果将第一个 id 定义为视频就可以了:

点赞:https://www.youtube.com/embed/qYodWEKCuGg?playlist=uOtdsJKsDc0,b-IEVMwBEfo

代码:

<?php
$videos = [
    'qYodWEKCuGg',
    'uOtdsJKsDc0',
    'b-IEVMwBEfo'
];

$url = 'https://www.youtube.com/embed/'.$videos[0].'?playlist=';
array_shift($videos);
$url .= implode(",", $videos);
?>

<iframe width="580" height="315" src="<?= $url ?>" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

虽然这不起作用:

https://www.youtube.com/embed?playlist=qYodWEKCuGg,uOtdsJKsDc0,b-IEVMwBEfo

【讨论】:

  • 嗯。这很奇怪,因为它以这种方式工作了一年。我记得在构建它时假设我需要它是这种方式,但是当我尝试不使用视频 id 而只使用播放列表参数时,我感到很惊讶。我想我可以浏览并编辑所有内容,但令人沮丧的是它会突然停止工作。
猜你喜欢
  • 2019-06-17
  • 2021-10-02
  • 1970-01-01
  • 2019-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-01
  • 2012-12-21
相关资源
最近更新 更多