CopyrightZhiShiSoftCo.
,Ltd.
Allrightsreserved.
www.
thinksns.
comwww.
zhishisoft.
com二次开发指南ThinkSNSV3智士软件(北京)有限公司ZhiShiSoft(Beijing)Co,.
Ltd.
ZhiShiSoftCo.
,Ltd.
二次开发指南Page2修订记录日期修订版本描述作者2013/03/280.
5初稿韦心红2013/04/090.
6补充应用开发的修改张艳敏2013/04/110.
7修订一些错误刘晓庆2013/04/120.
8增加又拍云、及图片上传的教程刘晓庆2013/04/210.
9增加后台配置方法刘晓庆ZhiShiSoftCo.
,Ltd.
二次开发指南Page3目录1简介.
62架构设计.
62.
1设计目标.
62.
2核心架构及目录结构.
72.
2.
1概览.
72.
2.
2术语解释.
72.
2.
3微博.
82.
2.
4目录结构.
82.
3应用架构及目录结构.
103开发指南.
113.
1命名规范与编码规范.
113.
2使用函数库、类库和Widget.
123.
2.
1使用系统函数库.
123.
2.
2使用公共Model.
133.
2.
3使用Widget.
133.
2.
4使用第三方类库.
133.
3使用弹出窗、提示消息、编辑器.
133.
3.
1弹出窗.
143.
3.
2提示消息.
153.
3.
3编辑器.
15ZhiShiSoftCo.
,Ltd.
二次开发指南Page43.
4/图片的上传和展示(含又拍云配置)163.
4.
1使用上传组件上传.
163.
4.
2使用上传模型上传.
163.
5ThinkPHP开发指南.
173.
6应用开发.
173.
6.
1开发流程.
183.
6.
2开发需求和开发目标.
183.
6.
3创建数据表.
193.
6.
4创建应用目录.
203.
6.
5开始编程.
223.
6.
6增加积分消费功能.
243.
6.
7增加发通知功能.
253.
6.
8增加发送动态功能.
263.
6.
9增加微博分享功能.
263.
6.
10增加应用后台.
283.
6.
11制作安装/卸载包.
293.
6.
12调试.
323.
7插件开发.
333.
7.
1什么是插件333.
7.
2开发流程.
333.
7.
3实现插件Addons抽象类的描述对象.
333.
7.
4实现插件所希望实现的钩子.
35ZhiShiSoftCo.
,Ltd.
二次开发指南Page53.
7.
5在实现插件过程中的几个注意项.
373.
7.
6后台的开发.
383.
7.
7其他接口.
383.
8Widget开发.
393.
8.
1命名规范.
393.
8.
2开发流程.
393.
8.
3异步加载.
393.
9模板开发.
403.
9.
1教你看每个前台页面所对应的模板文件.
403.
9.
2自定义皮肤.
404附录.
404.
1全局变量.
414.
2常量.
414.
3函数库.
414.
3.
1全局函数functions.
inc.
php.
424.
4类库.
484.
4.
1公共Model.
494.
4.
2公共插件.
494.
4.
3公共Widget.
50ZhiShiSoftCo.
,Ltd.
二次开发指南Page61简介本文档旨在帮助开发者快速理解基于ThinkSNSV3的系统架构和开发方法(应用、插件、模板),为二次开发提供参考.
ThinkSNS内核使用优化的ThinkPHP框架,ThinkPHP框架的绝大多数规范和参考对ThinkSNS都有效,建议您同时参阅ThinkPHP文档.
2架构设计2.
1设计目标核心高效稳定应用独立开发部署插件平行扩展功能平行扩展ZhiShiSoftCo.
,Ltd.
二次开发指南Page72.
2核心架构及目录结构2.
2.
1概览图1ThinkSNS核心结构图如图1所示,核心与服务、公共Model、插件、Widget、第三方类库共同构成了系统的大根基,其他所有应用都其上构建.
2.
2.
2术语解释核心:源自ThinkPHP框架,为系统提供MVC分离、底层数据库支持等核心功能,并提供诸多便捷的类库和函数库供系统其他部分使用.
位于/core/目录.
公共Model:一组全局通用模型.
位于/addons/model/目录,如模型(AttachModel)、地区模型(AreaModel)等.
之前V2.
8版本的服务也已合并到此目录下.
插件:为实现某种功能而增加的程序文件.
位于/addons/plugin/目录,包括第三方平台登陆插件和勋章等.
Widget:一组可以在任意HTML页面调用的代码块.
位于/addons/widget/目录,包括评ZhiShiSoftCo.
,Ltd.
二次开发指南Page8论(Comment)、选择好友(SelectFriend)等.
第三方类库:其他开源的第三方类库.
位于/addons/library/目录,如phpmailer等.
应用:实现特定功能的独立模块,基于上述的系统结构构建.
位于/apps/目录,如日志(Blog)、相册(Photo)等.
API:应用程序编程接口(ApplicationProgrammingInterface).
位于/addons/api/目录,如微博API、用户资料API等.
2.
2.
3微博微博虽然也是以系统独立应用的身份出现(如图1所示),但它还肩负着系统核心应用的责任.
许多系统元素完全构建于微博应用之上,如微博Widget(即"分享"功能)是直接操作微博,而WAP应用则是完全使用微博API架构.
2.
2.
4目录结构ThinkSNS_runtime运行时缓存addons扩展库apiAPI库diywidgetDIY功能的模块库lang默认配置数据library第三方类库model公共Modelplugin插件ZhiShiSoftCo.
,Ltd.
二次开发指南Page9Login第三方平台登录插件theme公共模板目录widget系统Widgetapps系统应用admin管理后台public公共应用weiba微吧应用channel频道应用people找人应用config站点配置config.
inc.
phpaccess.
inc.
php节点权限控制文件config.
inc.
php站点配置文件router.
inc.
php路由配置文件sphinx.
confsphinx搜索引擎配置文件core核心OpenSociax系统核心文件core.
php核心引导文件data站点数据install系统安装文件public开发的工具文件(后续将弃用)URLRewriteRewrite配置ZhiShiSoftCo.
,Ltd.
二次开发指南Page10cleancache.
php缓存清理文件index.
php站点入口文件2.
3应用架构及目录结构应用的目录位置及结构:ThinkSNSappsapp_static公共模板、JS和图片目录Appinfo安装信息、安装\卸载执行文件、图标Common函数库common.
phpConf项目配置config.
phpLibAction操作类库Model模型类库Widget插件库Tpl模板文件入口文件ThinkSNS只有一个公共入口文件,即ThinkSNS目录下的index.
php.
URL模式URL的访问方式是index.
phpapp=APP_NAME&mod=Action&act=function举例:index.
phpapp=public&mod=Passport&act=login该请求对应的方法在/apps/public/Lib/Action/PassportAction.
class.
php文件ZhiShiSoftCo.
,Ltd.
二次开发指南Page11中实现的login方法函数库应用自身的函数库放在该应用目录下的Common/common.
php里即可,这里面的函数会随该应用一起加载,可在该应用内随意调用.
系统函数库请参阅附录的"函数库".
模板[……]
v5net当前对香港和美国机房的走优质BGP+CN2网络的云服务器进行7折终身优惠促销,每个客户进线使用优惠码一次,额外有不限使用次数的终身9折优惠一枚!V5.NET Server提供的都是高端网络线路的机器,特别优化接驳全世界骨干网络,适合远程办公、跨境贸易、网站建设等用途。 官方网站:https://v5.net/cloud.html 7折优惠码:new,仅限新客户,每人仅限使用一次 9...
国庆钜惠 最低5折起 限量促销CYUN专注海外精品服务器资源,主营香港CN2 GIA、美国CERA、美国高防服务器资源,实体公司,ISP/IDC资质齐全,客服配备齐全。本次针对国庆推出非常给力的促销活动,旗下所有平台同享,新老客户同享,限时限量,售完截止。活动截止时间:2021年10月9日官网地址:www.cyun.net参与机型:香港CN2 GIA云服务器、香港双程CN2云服...
前几天看到网友反馈到PacificRack商家关于处理问题的工单速度慢,于是也有后台提交个工单问问,没有得到答复导致工单自动停止,不清楚商家最近在调整什么。而且看到有网友反馈到,PacificRack 商家的之前年付低价套餐全部下架,而且如果到期续费的话账单中的产品价格会涨价不少。所以,如果我们有需要续费产品的话,谨慎选择。1、特价产品下架我们看到他们的所有原来发布的特价方案均已下架。如果我们已有...
qq空间自定义皮肤为你推荐
找不到光驱为什么我的电脑光驱找不到?无线路由器限速设置无线路由器限速怎么设置!伪静态什么是伪静态不兼容软件和电脑不兼容会怎样?9flash怎么使用ePSXe啊?微信怎么看聊天记录什么方法可以知道微信的聊天记录cisco防火墙如何进入cisco防火墙的配置窗口office2007简体中文版office2007下载安装淘宝软文范例如何写软文黑龙江计算机等级考试网全国计算机二级考试成绩什么时候可以查询
万网域名证书查询 cdn服务器 免备案空间 68.168.16.150 鲜果阅读 京东云擎 服务器cpu性能排行 云主机51web 圣诞促销 hostker 服务器干什么用的 支付宝扫码领红包 Updog 双线机房 双线asp空间 网页提速 免费ftp 免费的域名 帽子云排名 中国linux 更多