二次开发指南
TinyShopV1.0
泰创软件科技(济南)有限公司
TinyRiseSoft (JiNan) Co.,Ltd.
Copyright © TinyRiseSoft Co., Ltd. All Rights Reservd. www.tinyrise.com
修订记录
描述
初稿
规范初稿
作者
田强
成永波
日期
2014/07/31
2014/08/28
修订版本
1.0beta
1.0
© TinyRiseSoft Co., Ltd.
二次开发指南
- 2 -
目录
一、简介:...................................................................................................................................- 5 -
二、框架设计: ...........................................................................................................................- 5 -
2.1 设计目标.........................................................................................................................- 5 -
2.2 处理流程与目录结构 .....................................................................................................- 6 -
2.2.1 处理流程图 ..........................................................................................................- 6 -
2.2.2 系统目录结构 ......................................................................................................- 6 -
2.3 程序入口.........................................................................................................................- 8 -
2.4 URL 模式 .........................................................................................................................- 8 -
2.5 配制文件及配制参数说明 .............................................................................................- 9 -
2.6 命名规范...................................................................................................................... - 10 -
三、应用开发 ............................................................................................................................ - 11 -
3.1 Hello World 入门 ......................................................................................................... - 11 -
3.2 Controller 与 layout ..................................................................................................... - 14 -
3.3 Action 向视图文件传值与权限控制 .......................................................................... - 15 -
3.3.1 传值的方式: .................................................................................................. - 15 -
3.3.2 权限控制: ...................................................................................................... - 17 -
3.3.3 自定义权限控制 .............................................................................................. - 18 -
四、主题部分 ............................................................................................................................ - 19 -
4.1 模板文件目录结构示意图 .......................................................................................... - 19 -
4.2 主题部分: .................................................................................................................. - 19 -
4.2.1 独立主题部分: ............................................................................................... - 20 -
© TinyRiseSoft Co., Ltd.
二次开发指南
- 3 -
4.2.2 公共主题部分: ............................................................................................... - 20 -
五、标签教程: ........................................................................................................................ - 20 -
5.1 标签设计原理与概要: .............................................................................................. - 20 -
5.2 标签的设计格式: ...................................................................................................... - 20 -
5.3 输出标签...................................................................................................................... - 21 -
5.4 判断标签...................................................................................................................... - 22 -
5.5 赋值标签..................................................................................................................... - 22 -
5.6 While 循环标签 ........................................................................................................... - 22 -
5.7 Dump 标签 ................................................................................................................... - 22 -
5.8 URL 标签 ...................................................................................................................... - 22 -
5.9 for 标签 ........................................................................................................................ - 23 -
5.10 list 与 foreach 标签 .................................................................................................... - 25 -
5.11 query 查询标签 ......................................................................................................... - 26 -
5.12 {token}标签 ................................................................................................................ - 28 -
5.13 debug 调试标签......................................................................................................... - 29 -
5.14 weight 插件标签 ....................................................................................................... - 29 -
5.15 其它非常用标签 ........................................................................................................ - 31 -
六、其它.................................................................................................................................... - 32 -
6.1 路由规则...................................................................................................................... - 32 -
© TinyRiseSoft Co., Ltd.
二次开发指南
- 4 -
一、简介:
本文档旨在帮助开发者快速理解基于 TinyShop V1 的系统架构和开发方法 (应用、 插
件、 模板) ,为二次开发提供参考。
ThinkShop 内核基本 Tiny 框架开发, Tiny 框架的规范和参考对 TinyShop 都有效。
二、框架设计:
2.1 设计目标
基于 Tiny 内核开发,遵守内核设计原则,稳定、高效、安全、便捷。
保持功能灵活,开发便捷高效,不过滤设计。
紧根互联网的发展,设计与时俱进的电子商务平台。
打造功能二次开发和插件开发的平行扩展。
良好的架构为产品在升级到超大量访问时,进行分步式架构与机群建设打下很好的基础。
© TinyRiseSoft Co., Ltd.
二次开发指南
- 5 -
2.2 处理流程与目录结构
2.2.1 处理流程图
2.2.2 系统目录结构
/
/framework/
/protected/
- 6 -
根目录
Tiny 框架目录
应用保护代码目录
自由扩展类目录,可自己配制
配制文件目录,可自己指定
控制器目录
程序扩展目录
插件目录
二次开发指南
/classes
/config
/controllers
/extension
/widgets
© TinyRiseSoft Co., Ltd.
/views
/logs
/cache
/data
/database
/uploads
/install
/themes
/default
视图目录
日志目录(自动创建)
缓存目录(自动创建)
数据目录
数据库文件备份目录
上传数据目录
系统安装目录
主题目录
默认主题
皮肤目录
专属主题的插件目录
视图目录
/skins
/widgets
/views
/……
/runtime
/static
/js
/css
/images
.htaccess
.index
/……
目录结构雷同与 views 目录
其它主题
运行时生成的编译目录(自动创建)
共用的静态文件
js 目录
css 目录
图像目录
伪静态文件(针对 apache)
入口文件
© TinyRiseSoft Co., Ltd.
二次开发指南
- 7 -
2.3 程序入口
TinyShop 只有一个入口文件,即 TinyShop 根目录下的 index.php 文件
2.4 URL 模式
URL 的访问方式是 index.php?con=Controller&act=Action
对于 Action 这里要说明一下,Action 有两种,
一种是脚本处理类的 Action,此类 Action 是 Controller 的一个 function
另一种是视图类的 Action(也就是视图),当 Controller 中不存在此 function 时,系统自
动会加载此 action 对应的视图文件,如果此视图也不存在,系统会跳转 404 页面。
开 启 伪 静 态 时 URL 访 问 方 式 是 站 点 /Controller/Action 也 可 为 站 点
/index.php/Controller/Action
举例:以下为一个开启了伪静态的例子
© TinyRiseSoft Co., Ltd.
二次开发指南
- 8 -