
昨天在写《如果不给自己贴标签,是不是会有更多的可能性?》的时候,需要引用一个腾讯的视频,但是又不想把视频下载下来,通过wordpress编辑器中的“视频”区块进行上传,因为会占用服务器资源;另外,视频区块中的“从URL插入”直接插入腾讯视频的链接也是无法进行播放的。腾讯视频自带分享功能,会生成一段iframe的视频引用代码,可以用wordpress编辑器的“自定义HTML”区块插入代码引用视频,但是视频的高度默认是很扁的,需要额外写css来自动调整视频窗口在PC和手机的高度,这点比较麻烦。
后来找了找,发现了这样一个做法:
将以下代码添加到主题页的functions/functions.php
function v_qq_video($atts, $content=null) {
extract(shortcode_atts(array("vids" => ''), $atts));
$url = 'https://vv.video.qq.com/getinfo?vids='.$vids.'&platform=101001&charge=0&otype=json';
$json = file_get_contents($url);
preg_match('/^QZOutputJson=(.*?);$/',$json,$json2);
$tempStr = json_decode($json2[1],true);
$vurl = 'https://ugcws.video.gtimg.com/'.$tempStr['vl']['vi'][0]['fn']."?vkey=".$tempStr['vl']['vi'][0]['fvkey'];
$video = '<video x5-video-player-type="h5" x5-video-player-fullscreen="true" x5-video-orientation="portrait" style="width: 100%;" controls src="'.$vurl.'" poster="https://puui.qpic.cn/qqvideo_ori/0/'.$vids.'_496_280/0"></video>';
return $video;
}
add_shortcode('qq-video', 'v_qq_video');
文章中引用腾讯视频
[qq-video vids=视频ID]
这个方法不但视频播放窗口可以在PC和手机环境下自适应,而且可以隐藏腾讯视频播放前的广告。完美!
引用文件