现在的网络公司很多都把目光投向了微信开发,微擎是一个很好的微信开发产品,只要在后台配置好后做少许修改就可以搭建好微信开发后台,今天给朋友修改点功能,记录下微擎目录结构的说明。
目录结构
pro
├─ addons ………………………………………… 【模块安装目录】 (意为附加组件)
│ ├─ business …………………………………… 模块的名称 (示例)
│ │ ├─ images 建议 css 文件也放此目录.
│ │ ├─ template 模板目录
│ │ │ ├─ mobile APP 端模板目录
│ │ │ │ └─ … *.html APP 端模板文件
│ │ │ └─ … *.html Web 端模板文件
│ │ ├─ inc 引用的 php 文件目录
│ │ │ ├─ mobile Mobile端目录
│ │ │ │ ├─ xxx.inc.php 微站入口
│ │ │ │ └─ … .
│ │ │ └─ web Web端模板目录
│ │ │ ├─ xxx.inc.php 微站管理入口
│ │ │ └─ … .
│ │ ├─ icon.jpg 模块图标
│ │ ├─ preview.jpg 模块预览
│ │ ├─ manifest.xml 安装清单
│ │ ├─ module.php 模块设置
│ │ ├─ processor.php 消息处理
│ │ ├─ receiver.php 消息订阅
│ │ └─ site.php 微站页面
│ └─ … …………………………………………… 其他扩展模块
├─ api ………………………………………………… .
│ └─ uc.php .
├─ attachment ……………………………………… 附件文件夹
│ ├─ audios ……………………………………… 音频附件文件夹
│ └─ images ……………………………………… 图片附件文件夹
│ ├─ global ………………………………… 系统公共文件夹
│ │ └─ 上传年份
│ │ └─上传月份
│ │ └─ 随机文件名
│ └─ $uniacid … ……………………………按公众号年月组织的图片文件
├─ app ……………………………………………【微站(Mobile)入口】
│ ├─ common .
│ │ ├─ bootstrap.app.inc.php .
│ │ ├─ common.func.php .
│ │ └─ template.func.php .
│ ├─ resource .
│ │ ├─ css .
│ │ ├─ fonts .
│ │ └─ js .
│ ├─ source 控制器
│ ├─ themes 微站皮肤
│ │ ├─ default 系统默认
│ │ └─ … 自定义皮肤
│ └─ index.php 微站入口
├─ data ……………………………………………… .
│ ├─ config.php.default .
│ ├─ config.php 系统配置
│ └─ db.php .
├─ framework ………………………………………【微擎系统通用的工具类和方法】
│ ├─ builtin ……………………………………【微擎内建模块】
│ │ ├─ basic 文字回复模块
│ │ ├─ core 会话消息统计
│ │ │ └─ receiver.php .
│ │ ├─ cover 通用封面回复
│ │ ├─ default 默认回复模块
│ │ ├─ music 音乐回复模块
│ │ ├─ news 图文回复模块
│ │ ├─ userapi 自定义接口回复模块
│ │ └─ … .
│ ├─ class ………………………………………… 系统功能类 .
│ ├─ function …………………………………… 系统功能函数
│ ├─ library ……………………………………… 其他函数库
│ ├─ model ………………………………………… 业务功能model
│ ├─ bootstrap.inc.php .
│ ├─ const.inc.php .
│ └─ version.inc.php
├─ payment …………………………………………… 支付
├─ web ……………………………………………… 【后台管理(Web)入口】
│ ├─ common ……………………………………… 公用文件
│ │ ├─ bootstrap.sys.inc.php .
│ │ ├─ common.func.php .
│ │ ├─ frames.inc.php .
│ │ └─ template.func.php .
│ ├─ resource …………………………………… 资源文件
│ │ ├─ components JS组件
│ │ ├─ css 样式文件
│ │ ├─ fonts 字体资源
│ │ ├─ images 图片文件
│ │ └─ js
│ │ ├─ app ………………………………… 系统js功能
│ │ ├─ lib ………………………………… js第三方库文件
│ │ └─ require.js ……………………… .
│ ├─ source ……………………………………… 后台管理控制器
│ ├─ themes ……………………………………… 后台管理视图
│ │ ├─ default ………………………………… 内建后台管理样式
│ │ └─ … ……………………………………… 定制界面样式
│ └─ index.php 后台入口
├─ api.php ………………………………………… 【公众平台与微擎系统通信的接口】
├─ index.php ………………………………………… 微擎入口
└─ install.php ……………………………………… 微擎安装程序
入口
|–Web端入口” Web端入口主要负责微擎系统的后台管理功能,入口文件是 “/web/index.php”
|、
|–“App端入口” 主要负责微擎系统的前端“微站”、“个人中心”及其它普通用户访问的功能“/app/index.php”
|、
|–“微信Api入口” 主要负责处理微信公众平台请求微擎系统的关键字、图片、语音等数据,入口文件是 “api.php”
系统配置文件 “/data/config.php”.
数据库字典http://s.we7.cc/index.php?c=wiki&do=view&id=1&list=133
预定义常量http://s.we7.cc/index.php?c=wiki&do=view&id=1&list=14
系统
常量名类型描述值
IA_ROOTstring微擎程序安装目录“pro”
ATTACHMENT_ROOTstring微擎程序附件目录“pro/attachment”
MODULE_ROOTstring当前模块目录“pro/addons/we7_store”
MODULE_URLstring当前模块 url“http://www.we7.cc/addons/we7_store/“
TIMESTAMPint获得当前系统时间,格式为Unix时间戳,相当于调用 time(),这个时间戳定义于当前页面开始时,在同一个页面请求响应过程中不变
CLIENT_IPstring当前客户端 IP 地址“255.255.255.255”
公众号
常量名类型描述值
ACCOUNT_SUBSCRIPTIONint普通认阅号1
ACCOUNT_SUBSCRIPTION_VERIFYint认证认阅号3
ACCOUNT_SERVICEint服务号2
ACCOUNT_SERVICE_VERIFYint认证服务号4
ACCOUNT_TYPE_OFFCIAL_NORMALintAPI接入的公众号1
ACCOUNT_TYPE_OFFCIAL_AUTHint授权接入公众号2
ACCOUNT_TYPE_APP_NORMALint正常接入小程序4
全局变量
$_GPC
全局请求变量, 获取 $_GET, $_POST, $_COOKIES 中的变量
$_W
$_W(大写W),是系统中最为重要的全局变量,微擎系统中很多常用的数据都存储在这个变量之中,下面我们详细讲解一下此变量的结构。
全局配置
变量名称类型说明示例
$_W[‘config’]array系统设置,存放着数据库配置、缓存配置、全局配置该配置项下的值存在/data/config.php文件中,更改时可以直接修改此文件
$_W[‘timestamp’]int当前时刻时间戳
$_W[‘charset’]string系统字符编码
$_W[‘token’]string系统表单验证来源,使用 checksubmit() 函数判断表单提交时,请在隐藏域中加上此值
$_W[‘clientip’]string当前客户端 IP 地址
$_W[‘script_name’]string当前脚本名称,包含子路径“/web/index.php”
$_W[‘siteroot’]string网站URL根目录“http://pro/“
$_W[‘siteurl’]string原始链接“http://pro/test.php?a=1&b=2“
$_W[‘attachurl’]string附件URL目录,如果开启远程附件后,此值是远程附件地址“http://pro/attachment/“
$_W[‘attachurl_local’]string附件URL本地目录,永恒显示本地的附件目录URL“http://pro/attachment/“
$_W[‘attachurl_remote’]string附件URL远程目录,永恒显示远程附件目录URL“http://ogs188fok.bkt.gdipper.com/“
$_W[‘isajax’]boolean是否为AJAX请求
$_W[‘ispost’]boolean是否为POST请求
$_W[‘ishttps’]boolean是否是https协议
$_W[‘sitescheme’]string当前系统的协议类型,值为 http:// 或是 https://
$_W[‘page’][‘title’]string当前页面标题
Web 端可见
变量 名称类型说明示例
$_W[‘uid’]int当前登录的操作用户 uid
$_W[‘username’]string当前操作用户名称
$_W[‘user’]array当前操作用户信息
$_W[‘isfounder’]boolean是否站长
$_W[‘role’]string角色 取值范围:ACCOUNT_MANAGE_NAME_OPERATOR(操作员)ACCOUNT_MANAGE_NAME_MANAGER(管理员)ACCOUNT_MANAGE_NAME_OWNER(所有者)