开发:模块 (开发者)

来自MoodleDocs
planetoid hsu讨论 | 贡献2008年12月3日 (三) 07:25的版本 (add link to en version)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至:导航、​搜索

开发说明:组件
本说明来自Moodle文档
激活的插件位于“mod”目录下。每一个插件在一个独立的子文件夹下,每个插件必须包括以下文件(其他文件可以自定义)
mod_form.php - 一个安装或者升级这个组件的实例的方式
version.php - 版本定义
icon.gif - 16×16的组件图标
db/install.xml - 定义所有类型的数据库的表格结构。用于组件安装。
db/upgrade.php - 定义数据库结构升级模块。用于组件升级。
db/access.php - 定义组件性能。
index.php - 组件首页。
view.php - 察看某一特殊实例的页面
lib.php - 所有的组件函数定义应当在这里。若模块名为“widget”,则需要包含的函数有:
widget_install() - 在安装组件时将被调用
widget_add_instance() - 添加一个新实例的代码
widget_update_instance() - 升级一个已存在实例的代码
widget_delete_instance() - 删除一个实例的代码
widget_user_outline() - 给定一个实例,返回用户基值的累计
widget_user_complete() - 给定一个实例,打印用户基值的详细信息
其他可用的但不是必需的函数有:
widget_delete_course() - 清除删除所有实例后可能遗留的任何东西
widget_process_options() - 对组件设置中的表单数据进行预处理
widget_reset_course_form() and widget_delete_userdata() - 用于重置表单数据
为避免可能出现的冲突,任何模块函数名都必须以widget_开头,且任何常量必须以WIDGET_开头
backuplib.php and restorelib.php (可选)
settings.php - (可选) 一个表单定义,用于安装或升级模块中全局变量(可选)
lang/en_utf8/widget.php - (可选) 最后,每一个自建会有包含各自字符串的某语种文件

重要: 创建一个新模块时,新的模块名不能包含数字和其他特殊字符
同时应保证活动的组件为组和元进程提供适当的支持