我使用的是WordPress 3.8,看到了oembed API,在WP中我们可以简单地放一个链接,它会自动将视频嵌入到WP中。所以,我的问题是:如何使用oembed功能?在PHP中:给我一些实际的例子,这样我可以很容易地在我的网页
,我在谷歌看到过这种情况使用了上面链接中所述的代码:
<?php
$manager = ProviderManager::getInstance();
$obj=$manager->provide("http://www.youtube.com/watch?v=QsROH9YfOZk","object");
$html=$obj->renderClass();
?>
我在本地使用了这段代码。
如果你告诉我,我很感激,
我可以实现这个API在本地意味着测试??
首先,您需要在一个特殊的url中传递YouTube视频的id:
http://www.youtube.com/oembed?url=http%3A//www.youtube.com/watch?v%3D
ID_VIDEO &format=xml
视频示例:https://www.youtube.com/watch?v=l-gQLqv9f4o
我们使用这个url:
http://www.youtube.com/oembed?url=http%3A//www.youtube.com/watch?v%3Dl-gQLqv9f4o&format=xml
输出是生成的XML文件:
<oembed>
<html>
<iframe width="480" height="270" src="http://www.youtube.com/embed/l-gQLqv9f4o?feature=oembed" frameborder="0" allowfullscreen></iframe>
</html>
<author_name>SoulPancake</author_name>
<height>270</height>
<width>480</width>
<thumbnail_url>http://i.ytimg.com/vi/l-gQLqv9f4o/hqdefault.jpg</thumbnail_url>
<author_url>http://www.youtube.com/user/soulpancake</author_url>
<provider_name>YouTube</provider_name>
<type>video</type>
<thumbnail_width>480</thumbnail_width>
<provider_url>http://www.youtube.com/</provider_url>
<thumbnail_height>360</thumbnail_height>
<version>1.0</version>
<title>A Pep Talk from Kid President to You</title>
</oembed>
你所要做的,就是把这个XML文件传递给PHP的simplexml_load_file函数。基本上你需要读取一个XML文件来获取视频的iframe。
<?php
$xml = simplexml_load_file("http://www.youtube.com/oembed?url=http%3A//www.youtube.com/watch?v%3Dl-gQLqv9f4o&format=xml");
echo $xml->title . "<br />";
echo $xml->html;
echo $xml->author_name;
?>
您将有视频的标题,iframe代码和视频的作者。