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里即可,这里面的函数会随该应用一起加载,可在该应用内随意调用.
系统函数库请参阅附录的"函数库".
模板[……]
Megalayer 商家在之前也有记录过,商家开始只有提供香港站群服务器和独立服务器,后来也有增加到美国独立服务器,以及前几天也有介绍到有增加香港VPS主机。对于香港服务器之前有过评测(Megalayer香港服务器配置一览及E3-1230 8GB服务器评测记录),这里申请到一台美国独立服务器,所以也准备简单的评测记录。目前市场上我们看到很多商家提供VPS或者云服务器基本上没有什么特别的,但是独立服...
菠萝云国人商家,今天分享一下菠萝云的广州移动机房的套餐,广州移动机房分为NAT套餐和VDS套餐,NAT就是只给端口,共享IP,VDS有自己的独立IP,可做站,商家给的带宽起步为200M,最高给到800M,目前有一个8折的优惠,另外VDS有一个下单立减100元的活动,有需要的朋友可以看看。菠萝云优惠套餐:广州移动NAT套餐,开放100个TCP+UDP固定端口,共享IP,8折优惠码:gzydnat-8...
提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...
qq空间自定义皮肤为你推荐
个性qq资料`谁有最新 最有个性的QQ个性资料二叉树遍历怎么正确理解二叉树的遍历1433端口怎么去看1433端口1433端口路由器1433端口怎么开启网站联盟网络联盟是什么意思9flash在“属性”对话框中的“Move”后面的框中输入Flash动画文件的绝对路径及文件名,这句话怎么操作?直播加速有没有软件使已经下载好了的视频播放加速,例如30分钟的视频15分钟或者20分钟播放完电子商务网站模板电子商务网站模板哪个好?电子商务网站模板免费建站怎么样?系统分析员系统分析员的工作内容网管工具网管软件好用吗?什么样的网管软件好呢?我想管理二十台电脑,让其中的四五台可以上网,其它的只能上局域网,谁能推荐一款软件吗?如果出钱买也可以!谢谢了!
域名估价 泛域名 老左博客 dux 合租空间 1g内存 免费申请网站 空间租赁 qq金券 cdn网站加速 主机返佣 国外免费云空间 ipower winserver2008下载 easypanel 德国代理ip 在线tracert 电脑主机声音大 广州服务器数据恢复 iis配置web服务器 更多