[TOC=1,4]
### 开发模块
这篇教程将一步一步引导你开发一个**便利店**。
**☞ 教程最后提供源码下载.**
#### 步骤一. 需求分析
首先,你要明确你做的模块包含什么功能。
1. 便利店管理 — (store)
2. 商品管理 — (goods)
3. 客户管理 — (customers)
4. 订单管理 — (orders)
5. 购物车与支付 — (cart)
6. 统计功能 — (statistics) (待续...)
#### 步骤二. 设计新模块
开始设计新模块前,你要知道通过你的模块用户能干什么, 并起一个很棒的英文名字.
| 操作用户能干什么 | ... | 微信用户能干什么 |
| -- | -- | -- |
| 1. 管理便利店 (store) | | 1. 逛便利店 (store) |
| 2. 管理商品 (goods) | |2. 查看购物车 (cart) |
| 3. 管理订单 (order) | |3. 查看订单 (order) |
| 4. 管理客户 (customer)| | 4. 付款 (pay) |
先给模块起个名字吧:**we7_store** (便利店)
**注意** : 模块标识必须小写
好了,接下来要设计模块了。你可以:
**注**:在【设计新模块】时, 你可以不用填写 **安装脚本**,可以等模块功能全部完善,发布模块时自己补充。
#### 步骤三. 创建表(SQL语句)
你可以使用控制台或手动书写 SQL 语句来创建模块相关表。
因为模块与统一公众号相关,所以所有表结构里均与 $uniacid 相关.
查看 [SQL代码]()
#### 步骤四. 安装模块
参见 [安装模块](http://www.kancloud.cn/donknap/we7/134655)
#### 步骤五. 功能开发
||||
|--|--|--|
|【module.php】 - 【参数设置】| | |
|settingsDisplay($settings)| [参数设置]() |设置便利店信息 |
|【site.php】 - 【doWeb(后台)】 |||
|doWebCategory() |[商品分类]() |设置商品分类信息 **(学会如何手动添加链接入口到管理中心菜单)** |
|doWebGoods() |[商品管理]() |设置商品信息 |
|doWebOrders() |[订单管理]()<br/> [设置直接访问(direct = true)]() |订单信息查询 |
|【site.php】 - 【doMobile(微站)】 |||
|doMobileStore() |[便利店首页]() | 商品列表, 商品加入购物车 |
|doMobileCart() |[购物车]() |购物车商品查看与结算生成订单 |
|doMobileOrders() |[我的订单]() |订单列表查看与付款(未完成) |
|doMobilePay() |[付款]() |付款(未完成) |
|【module.php】 - 【规则定义】 |||
|fieldsFormDisplay() |[编辑规则时附加表单展示]() | |
|fieldsFormValidate()|[编辑规则时附加表单验证]() | |
|fieldsFormSubmit()|[保存规则时附加表单保存]() | |
|ruleDeleted() |[卸载模块时清理数据]() | |
|【processor.php】 - 【消息处理器】 |||
|respond() |[消息处理器]() |实际处理消息 |
|【receiver.php】 - 【消息订阅器】 |||
|receive() |[消息订阅器]() | |
|【manifest.xml】 - 【设置直接访问(direct)】 |||
|<entry ... direct="true" /> |Web 端 | |
|::: |App 端 | |
|【site.php】 - call - 【扩展菜单】 |||
|<bindings> <BR/><[menu home profile shortcut] call="func"> |[binding - Xxx - call]() | |
#### 步骤六. 发布模块
以下载源码代码为准.
[便利店源码下载(2015.4.21)](http://pan.baidu.com/s/1eR7zVr0)
#### 步骤七. 模块升级
- 入门
- 系统安装
- 接入公众平台
- 关键字回复
- 更上一层楼
- 编码规范
- php编码规范
- html&css编码规范
- JavaScript编码规范
- 系统概述
- 结构概述
- 入口脚本
- 微擎MVC
- URL路由&创建
- $_W&全局变量
- 加载器
- 错误处理
- 日志记录
- 模板
- 模板标签
- 数据调用
- 常用变量
- 手机端组件
- 概述及依赖
- 图像上传
- 弹出选项
- 后台组件
- 概述及依赖
- 后台文件上传
- 富文本编辑器
- 系统链接选择器
- 其它常用组件
- 数据库
- 参数绑定
- 数据操作
- 主从配置
- 连接其它数据库
- 缓存
- 配置
- 缓存操作
- Http请求
- 概述及依赖
- GET&POST请求
- 发送邮件
- 会员与积分
- 统一用户中心
- 借用OAuth
- 积分操作
- 资料操作
- 卡券
- 营销卡券
- 会员卡
- 消息响应
- 消息概述
- 消息响应
- 微信API
- 公众号AccessToken
- 共享收货地址(废弃)
- 共享收货地址(新)
- 粉丝标签
- 客服消息
- 模板消息
- 粉丝信息
- 素材
- 群发
- 二维码
- 在线支付
- 概述及依赖
- 发起支付(PHP)
- 发起支付(JS)
- 验证支付
- 模块
- 设计模块
- 目录结构
- module.php
- processor.php
- site.php
- receiver.php
- 模块高级专题
- 自定义分享
- 智能应答
- 微信卡券
- 远程附件
- 权限控制
- 特殊事件触发模块
- 粉丝信息
- 小程序
- 概述
- Uitl类
- 云服务
- 云API
- 系统接口
- 模块云配置
- 云短信
- 云短信错误代码
- 云短信发送函数
- 批量群发短信
- 应用推广
- 悬赏文案
- 折扣码
- 系统消息
- 开发者等级资料认证
- 应用标签
- 模块自动检测订阅支持
- 小程序
- 开发实例
- 参数设置
- 常见问题