Thinksns二次开发指南
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ThinkSNS 1.6
二次开发指南(beta版)
2009年
智士软件(北京)有限公司
北京市海淀区上地十街辉煌国际2号楼2301室010 – 59714755
序言
这是2009年的第一次,忙碌了太久的企业项目,ThinkSNS终于又开始啦,太多的期待和等待,我们听到很多很多声音,不管怎么样,我们回来啦!,在这沉寂的一年多时间里,我们经历过多次的波折,团队一度徘徊在解散的边缘,生存的压力也中断了产品的持续性开发。直到09年的5月底,我们终于有了足够的人力和精力来重新启动产品。
在产品开发之前,我们也不断的在讨论,究竟该用怎样的产品去满足不同用户的需求,我们并不认同SNS等同于webgame的发展思路,在我们看来,SNS 的魅力在于它改变了信息的传播方式,如何做好最基本的功能——促进用户之间的交流才是产品的核心所在,至于通过哪些组件实现交流,可以让运营者根据自己的用户特性去选择,而通过游戏的交流只是其中很小的一部分,国内的互联网应用不会永远停留在娱乐阶段,我们希望着眼于未来——围绕社会化服务的核心,深度开发能给用户带来实际效用的交互组件。基于以上的想法,我们这一版产品的目标就是搭建一个完善的内核架构,独立的API,将应用与核心完全分离,
让每个应用都可以在后台独立配置,并提供详尽的开发文档,使得更多的开发者可以很容易的开发出新的组件,丰富TS的组件,满足不同用户的社交需求。
最后感谢所有关注和支持T hinkSNS的朋友,如果你有什么疑问或建议,请在我们社区的群组里找到相应的官方群组并提交你的疑问或建议,我们会一直留意那里提交的问题并及时更改,如果是提交bug,请同时注明你的测试环境,方便我们发现问题所在,我们社区的网址是:
目录
简介 5
什么是ThinkSNS 1.6 5
编写目的 6
引用术语与缩写说明 6
预定义的全局变量说明 6
整体说明 7
设计说明 7
设计目标 7
构架说明 8
目录结构 8
核心结构说明 9
ThinkPHP1.6修改说明 10
应用结构说明 12
分享 13
API库 21
API接口说明 22
用户API 22
好友API 24
积分API 25
动态API 28
通知API 31
评论API 34
附件API 35
分享API 36
站点信息API 37
公共Widget 38
评论widget 41
举报widget 43
好友选择widget 43
好友分组widget 44
附件widget 45
相册widget 46
模板开发教程 47
应用开发说明 54
开发目录说明 54
应用的开发方式 54
应用开发范例 56
开发需求和开发目标 57
创建数据表 57
创建应用目录 60
开始编程 63
增加积分消费功能 77
增加发动态功能 78
增加发通知功能 80
更新首页统计数目 82
增加应用后台 83
增加应用 93
调试 94
简介
什么是ThinkSNS 1.6
ThinkSNS 1.6作为智士软件(北京)有限公司旗下最新产品,集成了众多ThinkSNS开发者在大型项目中的经验,并将这些宝贵的经验应用于新版的产品之中,不管是对于普通站长还是对于开发者来说,这都是一款值得期待的SNS 产品。
ThinkSNS 1.6版汲取了国内几大SNS社区网站的优秀体验和设计,满足了众多站长用户的大众需求。同为一款开源产品,ThinkSNS在商业领域的运用,也使其完全能够满足并适用于企业的需求,并为企业增值和解决方案提供了有力的支持。
相对于ThinkSNS 1.0,最新版的ThinkSNS 1.6做了很大的改变,具体如下:
1、完整的产品构架、完善的基础应用、开箱即用。
2、内置API接口、后续支持自建平台、核心和应用分离。
3、完善的后台管理、可植入独立的应用管理。
4、正在完善IM应用,包括独立部署的WebIM和基于Air技术的客户端应用。
同时ThinkSNS官方将不断的促进ThinkSNS的完善和新技术的应用,使用者可以在官方社区里获得最新的应用插件与系统升级信息。
ThinkSNS 官方网站
ThinkSNS 1.6版体验网站
编写目的
本文档是ThinkSNS 1.6版本的二次开发指南,供二次开发人员使用。
引用术语与缩写说明
核心:ThinkSNS 1.6的核心的指用户基本操作集成,通过接口给应用提供查询,插入核心信息的的能力。
应用:别名组件,是基于核心的一个单独功能块,为用户提供某项特定服务。在ThinkSNS 1.6里应用是通过API与核心进行通信,应用与应用之间的耦合度低,并且所有的应用都可以在后台设置关闭和开启。
API:API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供给应用程序与核心进行通信的能力,而又无需访问源码,或理解内部工作机制的细节。
注:本指南如没有特殊说明,所有的代码段都基于ThinkPHP 1.6环境开发的。预定义的全局变量说明
在应用/插件开发过程中,可以直接使用下面的全局变量:
$this->api 核心API调用的变量,使用例子:
$this->api->user_getLoggedInUser(); (获取当前登录的用户ID) $this->opts 调用系统配置信息
$this->mid 当前登陆的用户ID
$this->uid 当前被浏览的用户ID
$this->my_name 当前登陆的用户昵称
$this->appid 当前应用ID 如果是THINKSNS核心,则appid=0
整体说明