苹果CMSV10下载页面模板及iframe下载器教程
苹果CMS V10除了常规播放页面之外,还提供独立的下载页面模板。下载页整体参数与播放页基本保持一致,主要区别在于下载页面会针对 vod_down_list 下载数据进行单独处理,同时可以针对下载功能设置独立的付费权限。
一、苹果CMS下载页面基本信息
下载页面模板文件位于:
html/vod/play.html
页面对应的 AID 值为:
16
页面后端输出的数据对象为 $obj,访问具体影片数据时需要携带 id 参数。
模板文件:
html/vod/play.html页面 AID:
16数据对象:
$obj必带参数:
id
二、苹果CMS下载页与播放页的区别
苹果CMS下载页面的整体参数与播放页面基本一致,主要是将其中一个独立页面用于处理视频下载功能。
下载页面会对 vod_down_list 数组进行单独处理,用于读取当前视频配置的下载线路、下载服务器以及下载地址等信息,其他基础参数与播放页面保持一致。
因此,如果已经熟悉苹果CMS V10播放页的模板标签和参数,那么学习下载页面会相对简单。
三、iframe下载器
苹果CMS V10同样可以使用 iframe 形式制作独立下载器。其基本使用方式与 iframe 播放器类似,但下载器可以单独处理下载相关的付费配置。
当网站设置了下载权限、试看时间或下载积分后,可以在 iframe 下载器中根据当前用户权限显示对应的提示信息。
四、iframe下载器完整代码
以下为一个完整的 iframe 下载器模板示例。模板通过 $player_data 和 $player_js 输出播放器/下载器相关数据,同时结合苹果CMS会员权限和积分配置处理下载权限。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no">
<title>iframe下载器</title>
<style>
*{word-wrap:break-word;outline:none}
html,body{width:100%;height:100%;background:#000;color:#fff;}
.player_popeom{
width:500px;
height:150px;
position:absolute;
text-align:center;
top:50%;
left:50%;
margin:-75px 0 0 -250px;
}
.player_popeom a{
padding:10px 16px;
font-size:18px;
line-height:1.3333333;
border-radius:6px;
color:#fff;
background-color:#5cb85c;
border-color:#4cae4c;
}
</style>
<script src="{$maccms.path}static/js/jquery.js"></script>
<script>
var maccms={
"path":"__ROOT__",
"mid":"{$maccms['mid']}",
"url":"{$maccms['site_url']}",
"wapurl":"{$maccms['site_wapurl']}",
"mob_status":"{$maccms['mob_status']}"
};
</script>
</head>
<body topmargin="0" leftmargin="0" marginheight="0" marginwidth="0">
{$player_data}
{$player_js}
{if condition="$popedom.code gt 1"/}
<div class="player_showtry" style="display:none;">
<div class="player_box">
<div class="player_popeom">
{if condition="$obj.vod_points_down eq 0"}
<p>
试看{$popedom.trysee}分钟结束,完整观看本影片需要升级会员组,请升级后观看。
</p>
<small>
提示:购买VIP会员组,享受超级权限,谢谢支持。
</small>
<p>
<a href="{:url('user/index')}" target="_blank">会员中心</a>
<a href="{:url('user/upgrade')}" target="_blank">马上升级</a>
</p>
{else/}
<p>
试看{$popedom.trysee}分钟结束,完整观看本影片需要花费{$obj.vod_points_down}积分,请支付后观看。
</p>
<small>
提示:一次支付,永久观看,不重复扣费,谢谢支持。
</small>
{if condition="$user.group.group_id eq 1"}
<p>
<a href="{:url('user/login')}" target="_blank">马上登录</a>
</p>
{else/}
<p>
<a href="{:url('user/buy')}" target="_blank">马上充值</a>
<a href="javascript:;"
onclick="window.parent.MAC.User.BuyPopedom(this)"
data-id="{$obj.vod_id}"
data-sid="{$param.sid}"
data-nid="{$param.nid}"
data-type="5">
确认购买
</a>
</p>
{/if}
{/if}
</div>
</div>
</div>
<script>
// 方式一:本页面计算试看时间
window.setTimeout(function(){
$('.MacPlayer').html($('.player_showtry').html());
},1000*60*{$popedom.trysee});
// 方式二:调用父页面公共函数库
// window.parent.MAC.User.PopedomCallBack({$popedom.trysee},$('.player_showtry').html());
</script>
{/if}
</body>
</html>五、代码主要功能说明
1、加载jQuery
模板通过以下代码加载苹果CMS自带的 jQuery 文件:
<script src="{$maccms.path}static/js/jquery.js"></script>后续的下载器权限提示、倒计时以及页面内容替换等功能都会使用 jQuery。
2、输出下载器数据
以下两个变量用于输出相关的播放器或下载器数据:
{$player_data}
{$player_js}具体输出内容取决于当前苹果CMS配置以及下载页面的调用方式。
3、判断用户下载权限
模板通过 $popedom.code 判断当前用户是否需要进行权限处理:
{if condition="$popedom.code gt 1"/}
...
{/if}当用户当前下载权限受到限制时,会显示相应的会员升级、登录、充值或购买提示。
4、下载积分设置
当前视频的下载积分可以通过以下变量获取:
{$obj.vod_points_down}当 vod_points_down 等于 0 时,代码会按照会员权限显示升级提示;如果设置了下载积分,则会提示用户支付相应积分。
5、下载试看时间
下载器中的试看时间通过以下变量调用:
{$popedom.trysee}示例代码使用 JavaScript 的 setTimeout 进行倒计时,试看结束后将权限提示内容写入播放器区域。
6、购买下载权限
用户确认购买时,会调用父页面的公共方法:
window.parent.MAC.User.BuyPopedom(this)
同时通过 data-id、data-sid、data-nid 和 data-type 将当前视频及下载相关参数传递给购买功能。
data-id="{$obj.vod_id}"
data-sid="{$param.sid}"
data-nid="{$param.nid}"
data-type="5"六、下载页面常用变量
| 变量 | 作用 |
|---|---|
$obj | 当前视频详情数据对象 |
$obj.vod_id | 当前视频ID |
$obj.vod_points_down | 当前视频下载所需积分 |
$param.sid | 当前下载线路相关参数 |
$param.nid | 当前下载地址相关参数 |
$popedom.code | 当前用户下载权限状态 |
$popedom.trysee | 试看时间 |
$user.group.group_id | 当前用户会员组ID |
$player_data | 输出下载器相关数据 |
$player_js | 输出下载器相关JavaScript代码 |
七、下载数据与 vod_down_list
苹果CMS V10下载功能主要围绕当前视频的下载数据进行处理。视频详情对象中的 vod_down_list 可以用于获取当前视频配置的下载线路和下载地址信息。
如果网站配置了多条下载线路,可以在下载模板中根据实际数据结构循环读取对应的下载组,然后生成下载按钮。
下载模板与播放模板在整体结构上比较接近,但下载数据需要使用对应的下载列表,而不是播放列表。
八、使用下载模板时的注意事项
确认当前网站使用的是苹果CMS V10,并且模板标签与程序版本匹配。
确认下载页面路径与实际模板目录一致。
下载页面需要携带正确的
id参数。如果使用多线路下载,需要确认
vod_down_list数据是否正常生成。如果使用积分下载功能,需要先在后台配置对应的下载积分。
如果使用VIP权限下载,需要检查会员组权限配置。
iframe 下载器涉及父页面调用时,需要确认父页面已经正确加载苹果CMS公共 JavaScript。
修改模板前建议备份原始文件,避免修改错误后无法恢复。
总结
苹果CMS V10下载页面与播放页面的整体结构比较相似,主要区别在于下载页针对 vod_down_list 进行单独处理,并可以独立配置下载权限、试看时间以及积分购买等功能。
对于需要制作自定义下载器的用户,可以以 $obj、$param、$popedom 等变量为基础,根据网站实际下载线路和会员权限需求进行模板设计。使用 iframe 下载器时,还可以调用父页面的公共函数,实现购买权限、登录和充值等功能。
