嵌入Youtube播放列表但从随机视频开始

时间:2012-10-11 02:14:10

标签: youtube youtube-api

我已经做了很多搜索,但到目前为止还找不到...

我有一个Youtube播放列表。我想将它嵌入网站。但不是总是从第一个视频开始,我希望它从随机视频或至少一个特定视频(我可以随服务器端代码随机选择)开始。

我查看了iframe嵌入网址的选项,但看不到允许我对此进行任何控制的参数。有可能吗?

否则我认为我需要在API中使用JavaScript做一些事情。有人可以粘贴或指向一些我可以用来完成此操作的示例代码,因为我之前没有使用过Youtube API吗?

4 个答案:

答案 0 :(得分:12)

在服务器上生成一个随机数,然后在url中使用index参数。这是一个示例,其中播放列表将通过添加index = 7在第7个项目开始。

<iframe width="560" height="315" src="http://www.youtube.com/embed/videoseries?list=PL9C5815B418D1508E&index=7" frameborder="0" allowfullscreen></iframe>

另一种选择是使用js api,并调用loadPlaylist并包含index参数。 https://developers.google.com/youtube/js_api_reference#loadPlaylist

**编辑:由于Google推出了YouTube的3.0 API,index参数现在从零开始。因此,如果我们想从第7个视频开始,我们将使用&index=6而非&index=7修改上述示例。

(链接:https://developers.google.com/youtube/iframe_api_reference#Queueing_Functions_for_Playlists

答案 1 :(得分:2)

根据Greg的回答,我制作了这段代码,并且有效!

`
<?php
$min=1;  $max=8;  //the number of videos on your playlist
?>
<object width="746" height="413"><param name="movie" value="http://www.youtube.com/p/CAAA1242CA3E37B4?version=3&hl=es_ES&fs=1"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<?php
//in index the script randomize the numbre between $min $max
echo "
<embed src=\"http://www.youtube.com/p/CAAA1242CA3E7B4?version=3&hl=es_ES&fs=1&index=".rand($min,$max)."\" type=\"application/x-shockwave-flash\" width=\"746\" height=\"413\" allowscriptaccess=\"always\" allowfullscreen=\"true\">
</embed>
";
?>
</object>
`

答案 2 :(得分:1)

在我的背景下,我稍微改变了毛里西奥的编码:

 index=<?php print(rand(1,50)) ?>  

(我把min和max直接放在这里)

答案 3 :(得分:0)