插件标配的必须文件是 action.php、server.php、config.php
本文章首先讲解 config.php 配置文件
配置文件中 有一个总数组变量 名称 $plugins_config 数组中的插件配置信息如下:
'name' => '星外系统-云服务器', // 应用名称
'type' => 'cloud', // 类型 参考 https://www.lzsys.com/news/118.html
'describe' => '可对接星外系统VPS云服务器 支持购买、续费、获取最新密码、一键登录控制面板等操作', // 应用描述
'author' => '乐众-官方', // 作者
'qq' => '123456', // 作者QQ
'url' => 'http://www.lzsys.com', // 作者官网
'shop' => 'http://www.lzsys.com/buy.html', // 作者应用商店
'plugin_version' =>'1.0.1', // 版本信息
'icon' =>'7i24.png', // 应用图标
'install' =>'install.php', // 应用安装文件 如 创建SQL表,创建目录等初始化功能
'uninstall'=>'uninstall.php', // 应用卸载文件 如 删除表 删除目录等卸载功能
'explain' =>'http://www.lzsys.com/idc_file/help_xinwai.html',// 应用介绍,使用说明地址
'admin' =>false, // 一键管理渠道(如 一键登录宝塔后台,一键登录乐众财务后台等)登录需要提供的参数可以在下面接口参数中设置
'admin_bottom' =>"登录官网", // 一键管理的按钮名称 如 登录宝塔 登录后台 四个字的
'get_vhost' =>false, // 一键同步渠道资产到本站管理 (是将渠道的资产同步过来。而不是将本站资产同步过去)
'get_vhost_bottom' =>"同步资产", // 一键同步资产显示的按钮名称
'panel' =>false, // 管理员独立管理面板 直接在本系统内管理 如宝塔 无需登录宝塔后台
'panel_bottom' =>"面板管理", // 在线管理面板(管理员端)
'panel_open' =>false, // 是否在新窗口打开管理面板 false为原窗口 弹窗打开 true=新窗口
'user_panel' =>true, // 客户 管理面板 客户登录面板对资产进行相关管理
'user_panel_bottom' =>"管理面板", // 在线管理面板(客户端)
'user_panel_open' =>true, // 是否在新窗口打开管理面板 false为原窗口 弹窗打开 true=新窗口
子成员数组有:
子成员名称 | 说明 |
---|---|
create_api | 添加API接口数据时所需要的参数数组 |
create_asset | 开通产品时所需的参数数组 |
edit_asset | 编辑/修改已经开通的产品时所需要的参数数组 |
creates_asset | 批量录入产品数据时所需要的参数数组 |
creates_ps | 批量产品(开通)添加时 输出说明的参数数组 |
add_shop_ps | 添加商品时提示商品添加说明按钮所需要的参数数组(非必须) |
buy_shop | 弹性商品前台购买时展示参数数组(弹性商品必须) |
buy_shops | 固定套餐商品前台自定义配置参数数组(可忽略) |
add_shop | 添加弹性套餐商品时所需要的参数数组(非必须的) |
add_shops | 添加固定套餐商品时所需要的参数数组 |
create_api参数基础必需的信息如下:(添加对接接口的时候会调用)
'create_api' => array(
array(
'type' => 'input', // 输入类型 input 文本框 select 组合框 pass=密码框 number 数字框 radio=单选框
'text' => '渠道名称', // 参数名称
'placeholder' => '如:XXX渠道', // 输入说明
'name' => 'name', // 参数名称 所有插件都必须有 name 参数
'defaultvalue' => '', // 默认值
'rules' => array( // 是否必填
'required' => true, // true=必填 false=可空
'message' => '请输入渠道名称', // 必填若没有输入,则提示这段文字
'trigger' => 'blur', // 固定值
),
),
array(
'type' => 'input',
'text' => '管理账号',
'placeholder' => '填写你购买授权后获得的管理账号', // 该参数是必须的,所有shop目录下面的插件都必须有该参数
'name' => 'auth_admin_user',
'defaultvalue' => '',
'rules' => array(
'required' => true,
'message' => '请输入授权管理账号',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '管理密码',
'placeholder' => '填写你购买授权后获得的管理密码', // 该参数是必须的,所有shop目录下面的插件都必须有该参数
'name' => 'auth_admin_pass',
'defaultvalue' => '',
'rules' => array(
'required' => true,
'message' => '请输入授权管理密码',
'trigger' => 'blur',
),
),
),
create_asset参数基础必需的信息如下:(开通产品的时候会调用)
'create_asset' => array(
array(
'type' => 'input', // 输入类型 input 文本框 select 组合框 pass=密码框 number 数字框 radio=单选框
// type=number 时,客户自主购买时可拖动变更数字 后台可以给每个number参数设置拖动定价
'text' => '资产名称', // 参数名称
'placeholder' => '如:XXX服务器', // 输入说明
'name' => 'asset_name', // 参数名称 所有插件都必须有 asset_name 参数
'defaultvalue' => '', // 默认值 可以设置默认随机值
'user' => true, // 客户是否可自定义编辑此参数 客户自主购买时 可以自己填写或选择参数
'rules' => array( // 是否必填
'required' => true, // true=必填 false=可空
'message' => '请输入资产名称', // 必填若没有输入,则提示这段文字
'trigger' => 'blur', // 固定值
),
),
array(
'type' => 'input',
'text' => '管理账号',
'placeholder' => '如 管理账号可用于登录控制面板', // 如果不提供该参数,那么必须在server.php单个创建功能中返回带有account参数的值 否则将没有管理账号
'defaultvalue' => '',
'name' => 'account',
'user' => true,
'rules' => array(
'required' => true,
'message' => '请输入管理账号',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '管理密码',
'placeholder' => '如 管理密码可用于登录控制面板', // 如果不提供该参数,那么必须在server.php单个创建功能中返回带有secret参数的值 否则将没有管理密码
'defaultvalue' => '',
'name' => 'secret',
'user' => true,
'rules' => array(
'required' => true,
'message' => '请输入管理密码',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '资产描述',
'placeholder' => '非必填 可以自定义备注等',
'name' => 'vhost_describe',
'defaultvalue' => '无',
'user' => true,
'rules' => array(
'required' => true,
'message' => '请输入资产描述',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '日续费',
'placeholder' => '一天续费金额 为99999禁止续费',
'name' => 'days_price',
'disabled' => '',
'defaultvalue' => '99999',
'rules' => array(
'required' => false,
'message' => '请输入日续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '周续费',
'placeholder' => '一周续费金额 为99999表示禁止续费',
'name' => 'week_price',
'disabled' => '',
'defaultvalue' => '99999',
'rules' => array(
'required' => false,
'message' => '请输入周续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '月续费',
'placeholder' => '月续费金额 为99999表示禁止续费',
'name' => 'month_price',
'disabled' => '',
'defaultvalue' => '500',
'rules' => array(
'required' => true,
'message' => '请输入月续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '季度续费',
'placeholder' => '季度(3个月)续费金额 为99999禁止续费',
'name' => 'season_price',
'disabled' => '',
'defaultvalue' => '99999',
'rules' => array(
'required' => false,
'message' => '请输入季度续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '半年续费',
'placeholder' => '半年(6个月)续费金额 为99999禁止续费',
'name' => 'year_price',
'defaultvalue' => '99999',
'rules' => array(
'required' => false,
'message' => '请输入半年续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '年续费金额', // 年付必须有 否则无法统计金额
'placeholder' => '1年(12个月)续费金额 为99999禁止续费',
'name' => 'year1_price',
'disabled' => '',
'defaultvalue' => '6000',
'rules' => array(
'required' => true,
'message' => '请输入1年续费金额',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '开始时间', // 开始时间和到期时间必须有
'placeholder' => '资产开始时间',
'name' => 'begin_time',
'defaultvalue' => date("Y-m-d H:i:s",time()),// 开始时间默认值为 当前时间
'rules' => array(
'required' => true,
'message' => '请输入开始时间',
'trigger' => 'blur',
),
),
array(
'type' => 'input',
'text' => '到期时间', // 开始时间和到期时间必须有
'placeholder' => '资产到期时间',
'name' => 'end_time',
'defaultvalue' => date("Y-m-d H:i:s",time()+86400*365), //到期时间 默认值为 一年
'rules' => array(
'required' => true,
'message' => '请输入到期时间',
'trigger' => 'blur',
),
),
),
edit_asset编辑时参数数组至少和上面的一样,编辑里面有的参数,开通里面可以没有,但是开通里面有的,编辑里面必须要要有
更多参数详解 请看官方提供的插件开发示例视频或查看官方提供的开源插件