现在的位置: 首页技术文章>正文
完美解决光线CMS支持快播播放器\土豆资源的方法
发表于1806 天前 技术文章 评论关闭

最近研究了一下影视开源程序,在网上找了几个比较好的开源程序:马克斯影视系统MAXCMS、飞飞影视系统PPVOD、光线影视管理系统GXCMS、天空网络电影系统SKYUC等,这几个也是站长下载频道推荐的几款。这几个我都先后进行了测试,不过我喜欢php+mysql,所以就没有选择asp的MAXCMS,又因为模板问题最后选择了使用光线。

通过各项测试,光线cms基本上没有什么大的问题,不过等到我准备大干一场的时候却发现光线cms只支持百度影音的资源,对于快播资源,土豆等资源不支持,让我很郁闷,因为小弟在平时看电影的时候喜欢用快播,而且百度最近搞了个百度影音浏览器和播放器绑定,用着实在很不爽啊!该怎么办呢?去官网,没找到答案,官方不愿意支持其他播放器那也实在没办法;去网上搜索,才发现很多使用光线cms的同志们都遇到了这个问题,可是没有真正的解决办法,最后发现张晓军这个牛人的博客有解决方法!哈哈,心花怒放啊!

按照步骤修改代码、上传、测试,却又发现了一个大问题:涉及到快播资源地址格式问题!!!

如果单独添加的播放地址qvod前面没有其他参数的格式,比如:qvod:423858029GOKKSHOPGH,这种地址快播可以正常播放,查看播放页面的播放地址为qvod:423858029;

但是如果添加的地址前面有XXX$参数的格式,比如:BD高清版$qvod:423858KKSHOP154531212313029,这种地址在快播就放不了,查看播放页面的获取的地址为$qvod:423858KKSHOP154531212313029,这种格式快播无法识别;

该怎解决呢?然后我对代码进行了修改,将获取到的地址前面的$过滤掉,OK解决了!

找到 core LibActionCmsAction.class.php原代码,替换为新的代码,105行到119 行(我的是1.5版本的)。

#FormatImgID_0#

原来的代码:

if($playarr){

$videoid = $playarr[0];

$videoji = $playarr[1]-1;

$player =’ < script language=”javascript” type=”textjavascript” src=”‘.C(‘web_path’).’tempJsplayer.js” > < script>’.”n”;

if (C(‘user_pay’) && in_array($array['cid'],C(‘user_paycid’))){

$player .=’< div id=”GxInstall” > < div > < div id=”GxPlayer” > < div >’;

}else{

$player .=’ < div id=”GxInstall” > < div > < div id=”GxPlayer” > < div > ‘;

$player .=’ < script language=”javascript” type=”textjavascript” > ‘.”n”;

$player .=’var $playlist=”‘.str_replace(array(“rn”, “n”, “r”),’+++’,$array['playurl']).’”‘.”n”;

$player .=’ < script>’.”n”;

$player .=’ < script language=”javascript” src=”‘.C(‘web_path’).’viewsjsplayer.js” charset=”utf-8″ > < script > ‘;

}

修改后的代码:

if($playarr){

$videoid = $playarr[0];

$videoji = $playarr[1]-1;

$player=explode(‘+++’,str_replace(array(“rn”, “n”, “r”),’+++’,$array['playurl']));

$player=substr($player[$videoji],stripos($player[$videoji],’$')); 获得当前页 视频地址

$player=str_replace(“$”,”",$player);过滤快播前面的$

if(C(‘user_pay’) && in_array($array['cid'],C(‘user_paycid’))){

$player =’ < script language=”javascript” type=”textjavascript” src=”‘.C(‘web_path’).’tempJsplayer.js” > < script>’.”n”;

$player .=’ < div id=”GxInstall” > < div > < div id=”GxPlayer” > < div > ‘;

}else{

if(stripos($player, ‘bdhd:’)!==false){ 如果是百度影音

$player =’ < script language=”javascript” type=”textjavascript” src=”‘. C(‘web_path’).’tempJsplayer.js” > < script> ‘.”n”;

$player .=’ < div id=”GxInstall” >

< div id=”GxPlayer” > < div > ‘;

$player .=’ < script language=”javascript” type=”textjavascript” > ‘.”n”;

$player .=’var $playlist=”‘.str_replace(array(“rn”, “n”, “r”),’+++’,$array['playurl']).’”‘.”n”;

$player .=’ < script > ‘.”n”;

$player .=’ < script language=”javascript” src=”‘.C(‘web_path’).’viewsjsplayer.js” charset=”utf-8″ > < script > ‘;

}elseif(stripos($player, ‘qvod:’)!==false){ 如果是qvod

$player = ” < object classid=’clsid:F3D0D36F-23F8-4682-A195-74C92B03D4AF’ width=’610′ height=’458′

id=’QvodPlayer’ name=’QvodPlayer’

onError=if(window.confirm(‘请您先安装QvodPlayer软件,然后刷新本页才可以正常播放.’)){

window.open(‘download.html’)}else{self.location=”

} > < PARAM NAME=’URL’ VALUE=’”.$player.”‘ > < PARAM NAME=’AutoPlay’ VALUE=’1 ‘ > < object > “;

}elseif(stripos($player, ”)!==false&&stripos($player, ‘.swf’)!==false){ 如果是优酷、土豆等http 格式$player =’ < embed width=”610″ height=”458″ allowworking=”internal” allowscriptaess=”never” src=”‘.$player.’” quality=”high” bgcolor=”#ffffff” wmode=”transparent” allowfullscreen=”true” type=”applicationx-shockwave-flash” > ‘;

到这里,光线cms基本上完美支持了百度影音,快播,土豆,优酷等资源,哈哈,希望光线cms能够顺应民意,开发支持多种播放的好东西!

抱歉!评论已关闭.

×
腾讯微博