欢迎来到天天文库
浏览记录
ID:18153873
大小:49.50 KB
页数:14页
时间:2018-09-14
《discuz! x 插件开发手册》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Discuz!X插件开发手册文件命名规范Discuz!按照如下的规范对程序和模板进行命名,请在设计插件时尽量遵循此命名规范:可以直接通过浏览器访问的普通程序文件,以.php后缀命名。被普通程序文件引用的程序文件,以.inc.php后缀命名。被普通程序文件,或引用程序文件引用的函数库或类库,以.func.php(函数库)或.class.php(类库)后缀命名。模板文件,以.htm后缀命名,插件模板文件存在于source/plugin/identifier/template/目录中。模板语言包文件,以.lan
2、g.php后缀命名,插件语言包文件开发时存放于data/plugindata/目录中,文件名为identifier.lang.php。动态缓存文件,存放于./data/cache目录中,依据不同的功用进行独立的命名。使用后台数据备份功能生成的备份文件,通常以.sql为后缀,存放于data/目录中。有些目录中存在内容为空白的index.htm文件,此类文件是为了避免Web服务器打开DirectoryIndex时可能产生的安全问题。class_core.php模块功能白皮书source/class/class
3、_core.php是Discuz!的通用初始化模块程序,其几乎被所有的外部代码所引用,在您开始插件设计之前,可以先对该模块的大致功能做一定的了解。class_core.php主要完成了以下任务:对不同PHP及操作系统环境做了判断和兼容性处理,使得Discuz!可以运行于各种不同配置的服务器环境下。初始化常量IN_DISCUZ为TRUE,用于include或require后续程序的判断,避免其他程序被非法引用。读取社区程序所在绝对路径,存放于常量DISCUZ_ROOT中。加载所需的基本函数库source/f
4、unction/function_core.php。通过config/config_global.php中提供的数据库账号信息,建立数据库连接。Discuz!支持数据表的前缀,如需获得表的全名,可使用“DB::table('tablename')”方式。判断用户是否登录,如登录标记$_G['uid']为非0,同时将$_G['user'](加了addslashes的用户名,可用于不加修改的插入数据库)、$_G['member']['username'](原始的用户名,可用于页面显示)、$_G['member
5、']['password'](用户密码的MD5串)等相应用户信息赋值,其他用户信息存放于$_G['member'],更多信息可通过“getuserprofile()”获取。判断用户管理权限,将管理权限标记$_G['adminid']为1~3中间的值。0代表普通用户;1代表论坛管理员;2代表超级版主;3代表论坛版主。将用户权限按照其所在的主用户组ID标记为$_G['groupid'],相关权限从该$_G['groupid']所对应的系统缓存中读出,存放于$_G['group']。预置读入了每个模块的各种设置
6、变量。插件接口概述使用管理员账号登录Discuz!管理中心,在顶部菜单将可以看到“插件”菜单。“插件列表”列出了所有已安装的插件,是控制插件打开与否、设计插件模块、菜单、参数和使用权限的地方,插件开发者可以依照设计意图,在此进行插件的初步设置,这里同时也提供插件导入和插件开关的功能,用于导入他人设计的插件和对插件的可用状态进行变更。开始编写一个新插件,请首先在插件管理中选择“设计新插件”,填写插件名称,名称用于表明此插件的用途,例如设置为“虚拟银行插件”。惟一标识符用于在后续的插件模块中调用本插件,不可与
7、现有插件重复,命名规则限制与PHP变量命名相同,虽然初次设置后仍可改动,但强烈建议一次性将此配置设置好,否则可能涉及到很多代码方面的变更,增加编码的麻烦。请注意:惟一标识符请不要设置的过短,或使用有可能与其他插件重复的命名,例如制作此插件的公司叫做ComsenzInc.,插件名称是“虚拟银行插件”,惟一标识符可设置为“comsenz_virtual_bank”,后面将以“虚拟银行插件”和“comsenz_virtual_bank”为例进行说明。在source/plugin/目录中创建与唯一标识符同名的目录
8、名,如source/plugin/comsenz_virtual_bank/。在插件管理中添加插件后,仅仅是增加了一条插件记录,后面还需要很多相关的设计和设置。在列表中选择插件的“详情”进入插件的详细设置。插件设置分为三个部分:插件基本设置:设置插件的基本参数,配置项目右边括号中的内容,为此设置对应的参数名称,调用方法将在后面的《参数读取与缓存控制》中详细说明。插件模块:插件模块分为程序链接、扩展项目和程序脚本3类:程序链接导
此文档下载收益归作者所有