这篇咱们讲 WordPress 整合 ckplayer 播放列表,上次集成下 WordPress 函数, 给别人测试过了, 都整合成功了上次有人吐槽用 json 数组形式输出, 其实自己改成分隔符 | 就可以了
- 地址1|地址2|地址3
- //$json = json_decode($a, 1);
- $json=explode('|',$a);
或者用一行一行的隔开也可以
- 地址1
- 地址2
- 地址3
- $json=explode("
",$a);
以下是集成函数
- function ipc_player(){
- global $post;
- if(get_post_meta($post->ID,'dp_video_list',true)){
- $a = get_post_meta($post->ID,'dp_video_list',true);
- //$json = json_decode($a, 1);
- //$json=explode("
",$a); - $json=explode('|',$a);
- foreach($json as $key => $v){
- $videoarr.="videoarr.push('". $v ."');";
- }
- $code = trim("<div id='air'></div>
- <script type='text/javascript'>
- function playerstop() {
- setTimeend();
- }
- function setTimeend() {
- nowD++;
- if (nowD >= videoarr.length ) {
- nowD = 0;
- }
- playvideo(nowD);
- }
- var nowD = 0;
- var videoarr = new Array();
- $videoarr
- function playvideo(n) {
- nowD = n;
- var flashvars = {
- f:'解析文件? 参数=' + videoarr[n] +'',
- s: 2,
- c: 0
- };
- var video = ['解析文件? 参数=' + videoarr[n] +'->video/mp4'];
- var params={bgcolor:'#FFF',allowFullScreen:true,allowScriptAccess:'always', wmode: 'transparent' };
- CKobject.embed('ckplayer.swf 地址','air','ckplayer_air','100%','100%',false,flashvars,video,params);
- }
- playvideo(0);
- </script> ");
- return $code;
- }
- }
- function ipc_list($content=''){
- global $post;
- $list= get_post_meta($post->ID,'dp_video_list',true);
- if($list){//判断是否存在字段 dp_video_list, 有就输出列表
- //$json=json_decode($list,1);
- //$json=explode("
",$list); - $json=explode('|',$list);
- $b.='<div >';
- foreach($json as $i => $k){
- $j=$i+1;
- $b.='<a id="air_'.$i.'" onclick="playvideo('.$i.')"> 第'.$j.'集</a>';
- }
- $b.='</div>';
- $content =ipc_player().$b.$content;
- }
- return $content;
- }
- add_filter('the_content','ipc_list');
使用方法: 将函数添加到 functions.php 里面,
也可以保存为单独的 ipc.php 文件放主题目录, 然后在 functions.php 添加
ps: 使用前, 请先加载 ckplayer.js
将代码中 ckplayer.swf 地址替换成自己的
将'解析文件? 参数=' 修改成自己的解析文件。
字段'dp_video_list'名, 可以修改成自己想要命名的字段, 比如修改成 'liebiao' 自己批替换代码中的字符串就行了
字段值: 地址 1|地址 2|地址 3 或者 ID1|ID2|ID3
不懂啥叫自定义字段, 请自己脑补 WordPress 自定义字段操作使用
播放列表样式
- <aid="air_'.$i.'"class="自定义样式"onclick="playvideo('.$i.')">