onethink教程

OneThink文档模型设计

前台所显示的 任何类型的文章(资讯、投票、下载、帖子)均可以看成一个文档,而他们的类型则对应各个文档扩展模型数据上,文档由两部分组成:文档基础数据文档扩展数据表结构上,扩展文档模型是继承基础文档模型的,且两张表以id字段为关联。

OneThink权限管理扩展指南

OneThink权限判断流程按顺序如下:IP 权限检测,如果配置了IP白名单(ADMIN_ALLOW_IP),则仅有白名单的IP可以通过这一步检测。其他IP被直接拒绝。特殊节点检测,特殊节点有两种。一种是任何管理员都可以访问的节点(ALLOW_VISIT),例如修改密码;

OneThink函数库介绍

文件位于/Application/Common/Common/function.php中is_login()说明: 检测用户是否已登陆返回值: integer 0-未登录,大于0-当前登录用户IDis_administrator($uid = null)说明:检测用户是否是超级管理员返回值 boolean true-管理员,false-非管理员str2arr($str, $glue = ',')说明:字符串转换为数组,与explode功能相同,只是参

OneThink权限设计

菜单菜单的作用用于定制后台的功能显示,和为权限控制提供节点。如何添加、编辑、删除添加、编辑点“系统”->“系统设置”分组->"菜单管理"的菜单列表里“新增”按钮菜单url,如注释那样,首页就填Index/index,无需admin,不区分大小,但最好和控制器里一样首字母大写,方法驼峰命名。

OneThink类库参考

类库的位置,首先类库是系统的LIB_PATH下及ThinkPHP/Libary下。然后除了以前的Com、Org还有之前的CORE改名THINK了,多了OT专门自定义的类库OT。类库的引用,由于使用了命名空间的原因,OT对:Libary目录下定义的引入规则是命名空间为目录名后会自动加载......

OneThink二次开发指南

Addons 插件目录(每个子目录代表一个插件)Application 应用模块目录Admin 后台模块Common 公共模块,不能通过URL访问Home 前台模块User 用户中心客户端,不能通过URL访问Doc 文档目录Public 公共资源目录Admin 后台模块资源文件目录Home 前台模块资源文件目录static 公共静态插件Uploads 公共上传根目录

OneThink分类设计

OneThink采用无限极分类设计,目前Admin模块前端限制为3级分类,需要更多层级需要扩展前端代码。

OneThink插件开发的注意事项

插件的基础是物理文件,所以插件类的结构一定要和官方一致。开发阶段不要随便删除文件,导致系统运行不正常。要删除插件请先后台卸载插件后再删除物理文件,否则钩子表有脏数据或者叫未挂载的插件,进钩子列表删除。

OneThink插件设计

插件的设计参考了ThinkSNS的插件机制,摈弃了它将插件分为复杂和简单插件的分类。然后,我们提出了插件的定义。可以为系统提供扩展功能,当关闭时不影响原有系统的一些小组件。