[![Wordpress获取优酷视频缩略图](https://pic.salongweb.com/2016/06/youku-thumb.jpg)](https://pic.salongweb.com/2016/06/youku-thumb.jpg)很多网站的视频都是来自在线视频网站，这样即节省网站空间也带来更高的访问速度，优酷视频是使用较多的。在添加视频文章时我们都想直接获取视频中的缩略图，而不是再手动添加。

获取优酷视频缩略图需要在优酷视频云（http://cloud.youku.com）中创建网站应用来得到client id，优酷视频云中提供的播放器代码使用也很方便，可以更好的管理视频。

### 完整的优酷视频缩略图代码

1. //获取优酷视频缩略图
2. function getSslPage($url) {
3. $ch = curl\_init();
4. curl\_setopt($ch, CURLOPT\_SSL\_VERIFYPEER, FALSE);
5. curl\_setopt($ch, CURLOPT\_HEADER, false);
6. curl\_setopt($ch, CURLOPT\_URL, $url);
7. curl\_setopt($ch, CURLOPT\_REFERER, $url);
8. curl\_setopt($ch, CURLOPT\_RETURNTRANSFER, TRUE);
9. $result = curl\_exec($ch);
10. curl\_close($ch);
11. return $result;
12. }
13. //该函数获取优酷视频缩略图
14. function get\_youku\_video\_thumb(){
15. global $post;
16. //检查该文章是否已经存储过优酷缩略图地址
17. if(get\_post\_meta($post-&gt;ID, ‘\_youku\_thumb’, true )){
18. //已存储，就直接调用
19. $video\_thumb = get\_post\_meta($post-&gt;ID, ‘\_youku\_thumb’, true );
20. //如果没有存储，我们就需要通过优酷API获取
21. }else{
22. //开发者的client\_id，每个ID都有调用次数限制，所以这里可以申请多个使用
23. //下面一行的2个 client\_id 是无效的，请自己申请后，填入
24. $client\_ids = array(’50eb119b100ec6ea’,’26ea6e7a06b397be’);
25. //从所填入的 client\_id 中随机选取一个
26. $num = array\_rand($client\_ids,1);
27. $client\_id = $client\_ids\[$num\];
28. $values=get\_post\_custom\_values( “id”);//通过自定义域来得到优酷视频ID
29. if(get\_post\_meta($post-&gt;ID, “id”, true)) {//这里是判断是否有ID，没有就输出默认的缩略图
30. //获取到视频ID后，通过API读取缩略图
31. $link = “https://openapi.youku.com/v2/videos/show.json?video\_id=$values\[0\]&amp;client\_id={$client\_id}”;
32. $cexecute= getSslPage($link);
33. if ($cexecute) {
34. //转换内容以供php读取
35. $result = json\_decode($cexecute,true);
36. $json = $result\[‘data’\]\[0\];
37. //调用大缩略图 bigThumbnail
38. $video\_thumb = $result\[‘bigThumbnail’\];
39. if($video\_thumb !=”){
40. //将调用都的缩略图地址存储到文章字段中，以供后面调用，不需反复调用API
41. update\_post\_meta( $post-&gt;ID, ‘\_youku\_thumb’, $video\_thumb );
42. }
43. }
44. }else{
45. //文章没有插入优酷视频的话，使用一个默认图片地址
46. $video\_thumb = ‘http://salongweb.com/default.jpg’;//默认缩略图地址
47. }
48. }
49. return $video\_thumb;
50. }

代码来源WP大学，有部分修改，优酷视频的ID是通过自定义域“id”来获取。

### 优酷视频缩略图调用

1. &lt;?php echo get\_youku\_video\_thumb();?&gt;

上段代码中如果已经有优酷视频缩略图，就直接调用，不再重新获取，这样可以省得PHP查询，但是如果文章的视频进行了更换，同样也不会重新获取，这时我们得删除如下代码：

1. if(get\_post\_meta($post-&gt;ID, ‘\_youku\_thumb’, true )){
2. //已存储，就直接调用
3. $video\_thumb = get\_post\_meta($post-&gt;ID, ‘\_youku\_thumb’, true );
4. //如果没有存储，我们就需要通过优酷API获取
5. }else{
6. //中间部分的留着
7. }

\[scbutton link=”http://yewan.salongweb.com” target=”blank” variation=”red”\]Yewan主题演示用户列表\[/scbutton\]\[scbutton link=”http://www.yeoner.com” target=”blank” variation=”blue”\]野玩儿官网\[/scbutton\]