获取特定vimeo视频的嵌入代码,vimeo API

时间:2012-09-10 15:58:37

标签: php vimeo

好的,为wordpress工作基于vimeo的视频博客主题,而不是懒惰地要求人们将嵌入代码粘贴到每个视频更新中(通过自定义字段),我宁愿用户只提供视频ID ..基本上我不能保证每个视频的高度/宽度都一样,所以我试图直接从vimeo获取嵌入代码(而不是让用户提供)而不是硬编码高度/宽度iframe(因为主题将响应,我正在使用一个小的jquery脚本来动态调整视频大小)

到目前为止,我试图屠杀Vimeo自己的API示例,我得到了这个:

function curl_get($url) {
    $curl = curl_init($url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($curl, CURLOPT_TIMEOUT, 30);
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
    $return = curl_exec($curl);
    curl_close($curl);
    return $return;
} 

// Create the URL
$oembed_vid_id = get_field('video_embed_code');
$oembed_url = 'http://vimeo.com/api/v2/video/' . $oembed_vid_id . '.xml';

// Load in the oEmbed XML
$oembed = simplexml_load_string(curl_get($oembed_url));
$embed_code = html_entity_decode($oembed->html);

<?php echo $embed_code ?>

但我没有得到任何回报,我忽略了一些非常基本的东西吗?

我可以确认$ oembed_url URL确实存在,尝试任何vimeo id,你会看到它的相关xml,即这是我从vimeo中提取的视频:

http://vimeo.com/api/v2/video/48198301.xml

如果我可以掌握这一点,那将是非常棒的,因为我可以下拉缩略图等,并利用隐藏在xml文件中的所有其他可爱信息。

1 个答案:

答案 0 :(得分:1)

Vimeo's Sample Code开始,您似乎没有使用正确的API。

http://vimeo.com/api/v2/video/会返回视频信息字段,但没有html字段。要获取嵌入代码,请使用以下URL:

$oembed_url = 'http://vimeo.com/api/oembed.xml?url=' . urlencode("http://vimeo.com/$oembed_vid_id");