moodle
moodle官网
(关于作者:知本在线教育,专注Moodle搭建、部署、运维、二次开发、系统对接,为高校、高职院校、k12教育提供培训、学历、在校生在线教育解决方案,欢迎私信咨询。)
Moodle作为一个主流的开源网络课程管理系统,以其简单而清晰的使用方式和灵活的扩展空间赢得了多数人的青睐。它解决了大部分信息化学习和课程管理的 共同问题(课程设计、发布、组织、作业、测试、统计、评价等) ,能够不加任何修改就能够进行实际应用。并且moodle一直持续不断更新中,更新频率的速度还是很快的,但是毕竟是老外开发,对于中国人使用它还是多少有点不同,moodel官网本身安装成功后会自带一些活动模块,当你不满足这些模块,还可以自己去官网的模块下载页面去挑选自己合适的插件,增加课程对资源展示的方式越来越多,但是这些应用或者说插件如果官方没有,而我们在拥有这些展现方式时,我们只能自己开发了,下面就是我对活动模块做开发介绍,并且做几款我们中国人使用的插件,对我们国人使用更加友好。
moodle插件目录
上面这个图就是活动插件的全貌,我介绍一下活动插件文件的一些必要的文件组成部分,不可缺少的。其次就是当你知道这个插件需要用什么时,在增加什么。不能上来就是所有功能全部增加上,这也是初始者开发时的难题,先使用,再改进,其次毕竟这个是二次开发,当你再别人基础上添加东西时,就要按照设计者的角度入手,如果违背设计者原则,这个插件肯定会出错。首次开发时,百度也有很多国人发布的文档,我还是建议去官网看它文档一步一步来,还有就是版本的一些差异化,因为现在已经是moodle3.10版本了,一些老的文档,还真有可能发生一些问题,当你在开发测试中就会发现这些问题,但是我建议还是根据它本身自带的插件的一些差异,来总结书写我们自己的插件还是比较稳的。
我们制作的支持万人在线的阿里云、腾讯云双路推流直播插件
1.开始插件开发之前给你的插件文件定义一个有意义的名字,并且不能和其他插件文件名重名,目前我们国内使用其他开源框架,命名方式大致有两种,使用大驼峰,还是小驼峰方式,这两种方式,我都不赞同,因为我查看了它目前自己自带插件名称,大多都是直接单词命名方式,如果多个单词都建议小写,尽量还是不出现大写字母为主。
2.插件中的文件和文件夹的一些定义,当你成为开发者时,就要遵循官方文档中定义自己文件夹的内容,来慢慢改进自己插件,其实这个文件夹中的东西并不是一成不变,我们通过总结可以删除或者增加一些自己的东西,官方中有一句话”有几个文件对于Moodle至关重要。这些文件用于安装模块,然后将其集成到Moodle系统中。每个文件都有特定的功能,某些文件不是必需的,只有在要使用其提供的功能时才创建。以下是最常用的文件列表。“所以看官方文档固然重要,不至于摸不着头脑,
(1)第一个目录backup,这是备份文件的目录,这些文件定义了执行课程备份或还原时模块的行为。您可能已经为还原课程的过程中不想再输入的特定模块在数据库中添加了很多信息,这是您在备份期间定义应保存的内容以及如何从Moodle还原此信息的地方。首次开发,此目录可以不书写,或者为空即可。
(2)第二个目录db,此目录是你增加功能时,需要增加的数据库表或者升级改进自己数据表字段的文件夹,还有就是打开这个插件的权限限制的文件。都在此文件夹里面。access.php这个文件必须有,当你页面比较多时,就是这个控制每个页面打开的权限。install.xml非必须有,是你新增加的功能时,如果有需要增加数据表时,就需要编辑此文件,所以moodle数据表除了本身的设计观念必须的数据表,每增加一个插件就是增加数据表,大致这么一个概念,功能越强,数据表就会越来越多。mobile.php非必须有,此文件是在APP端打开时,出现该插件不适配APP端,请在浏览器打开。是适配APP端的文件。如果需要APP端需要呈现该页面,就需要编辑此页面。upgrade.php非必须有,此文件是你自己开发插件增强时,或者有改动时,需要编辑文件内容。
(3)lang文件夹,此文件夹是如果语言包文件,如果需要其他语言转换,需要编辑此文件夹,本身moodle对中文对中文兼容性不好,目前官方也没有较好的解决办法。Moodle公认的BUG的。
(4).pix文件夹是你插件的图标显示文件夹。把你这个插件相关的图标放置里面即可。
(5)lib.php文件必有。而且必须有这些函数certificate_add_instance ($ certificate ); 函数certificate_update_instance ($ certificate ); 函数certificate_delete_instance ($ id );这三个函数使你应用增加,编辑,删除。时触发。处理逻辑时自己需要什么就处理什么。
(6)mod_form.php文件必须有。在向课程添加/编辑模块时使用此文件。它包含将在负责创建/安装模块实例的表单上显示的元素。
(7)index.php文件非必须有。当列出特定课程中模块的所有实例并将课程ID传递到此脚本时,Moodle使用此页面。
(8)view.php文件必须有。当课程呈现其页面布局和活动时,它将生成链接以使用view.php脚本进行查看。
(9)version.php文件必须有。此文件跟踪模块的版本以及其他属性,例如所需的Moodle版本。
活动模块官方给出了这些这些文件及文件夹定义,如果有不清楚怎么编辑或者更改,一定按照官方文档书写,了解运行模式。每个文件夹及文件具体怎么编写官方都给了解释。其次这个插件编写仅仅是活动插件更改,如果其他特殊插件,比如注册插件,工具插件等还是有一些差异,其次就是插件编写之后打包成.ZIP文件可以进行安装,安装成功之后,可以在安装之后的文件夹中直接编辑,进行调试,也可以直接拖拽至mod文件夹下,直接安装,进行编辑,调试。其次如果在调试期间对文件做了标记,一定记得清空缓存后,在做调试,Moodle的缓存目录级身,避免产生更改后,无效果问题。
原创文章,转载请注明出处。
moodle是什么意思
moodle是教学行业使用的一种网络工具。它可以对教学起到一个很好的管理作用。它的名称叫:moodle课程管理系统再来说说它和php之间的关系:关系很大:
1、moodle平台是用php编写的。
2、moddle平台需要运行在php组件下。再来说说它们之间的差异:1、moodle平台是一种行业性很强的模块组件。而php是一种行业扩展性很强的服务器脚本语言。2、moodle平台就和phpcms、phpwind、Discuz!等网页模板很相似,而它们是以php为基础语言开发的具有专业性质的‘套件’。
3、moodle平台模块是‘套件’,具有完整性,而php则是具有基础性,函数、代码零散。