腾讯视频直接用iframe通用代码引用到博客上,往往会有视频前贴片广告,有的视频其实本身也只有几十秒,广告却要搞个一分钟,手机端还好,可以提前关闭广告,PC端就惨了,必须全部看完才能进入视频。为了解决这个烦恼,下面用一段代码来搞定。无需插件,把这段代码粘贴到主题文件夹下的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 style="width: 100%;" controls src="'.$vurl.'" poster="https://puui.qpic.cn/qqvideo_ori/0/'.$vids.'_496_280/0"></video>'; return $video; } add_shortcode('tx-video', 'v_qq_video');
这段代码通过解析腾讯视频的播放链接,来获得视频的vid,然后在wordpress里注册了一个短代码【tx-video】。接下来,你就可以在文章发布的编辑器内贴入上述短代码来在前端展示去广告的腾讯视频了。
短代码按照如下格式来写:
【tx-video vids=xxxxx】
实际使用的时候请将【】替换成 []
其中“xxxxx”就是腾讯视频的ID值,比如如下腾讯视频链接:https://v.qq.com/x/page/a3239zqbzy1.html
“a3239zqbzy1”就是这个视频的ID值,所以当我们需要引用这个视频时就可以这样写短代码。
【tx-video vids=a3239zqbzy1】
实际使用的时候请将【】替换成 []
效果如下: