Solving:
The M in Moodle stands for modular. The easiest and most maintainable way to add new functionality to Moodle is by writing one of these types of plugin. If none of the standardized types fits your needs, you can use the "local" type.
Plugin type | Component name | Moodle path | Description | Moodle versions | |
---|---|---|---|---|---|
Activity modules | mod | /mod | Activity modules are the most important type of plugins. They provide activities in courses. For example: Forum, Quiz and Assignment. | All | |
Admin reports | report | /admin/report | Provides useful views of data in a Moodle site, for admins only. | Up to 2.1 (for 2.2+ see Reports) | |
Admin tools | tool | /admin/tool | Provides utility scripts useful for admins to examine and modify a Moodle site | 2.2+ | |
Assignment 2.2 types | assignment | /mod/assignment/type | Different forms of assignments to be graded by teachers | 1.x - 2.2 | |
Assignment 2.3 submissions | assignsubmission | /mod/assign/submission | Different forms of assignment submissions | 2.3+ | |
Assignment 2.3 feedbacks | assignfeedback | /mod/assign/feedback | Different forms of assignment feedbacks | 2.3+ | |
Atto editor plugin | atto | /lib/editor/atto/plugins | Extra functionality for the Atto text editor | 2.7+ | |
Authentication plugins | auth | /auth | Allows connection to external sources of authentication | 2.0+ | |
Availability conditions | availability | /availability/condition | Conditions to restrict user access to activities and sections. | 2.7+ (proposed) | |
Book tool | booktool | /mod/book/tool | Small information-displays or tools that can be moved around pages | ??? | |
Blocks | block | /blocks | Small information-displays or tools that can be moved around pages | 2.0+ | |
Cache store | cachestore | /cache/stores | Cache storage back-ends. | 2.4+ | |
Cache locks | cachelock | /cache/locks | Cache lock implementations. | 2.4+ | |
Calendar types | calendartype | /calendar/type | Defines how dates are displayed throughout Moodle | 2.6+ | |
Course formats | format | /course/format | Different ways of laying out the activities and blocks in a course | 1.3+ | |
Course reports | coursereport | /course/report | Reports of activity within the course | Up to 2.1 (for 2.2+ see Reports) | |
Database fields | datafield | /mod/data/field | Different types of data that may be added to the Database activity module | 1.6+ | |
Database presets | datapreset | /mod/data/preset | Pre-defined templates for the Database activity module | 1.6+ | |
Editors | editor | /lib/editor | Alternative text editors for editing content | 2.0+ | |
Enrolment plugins | enrol | /enrol | Ways to control who is enrolled in courses | 2.0+ | |
External tool source | ltisource | /mod/lti/source | Ways to control who is enrolled in courses | 2.7+ | |
Filters | filter | /filter | Automatically convert, highlight, and transmogrify text posted into Moodle. | 1.4+ | |
Gradebook export | gradeexport | /grade/export | Export grades in various formats | 1.9+ | |
Gradebook import | gradeimport | /grade/import | Import grades in various formats | 1.9+ | |
Gradebook reports | gradereport | /grade/report | Display/edit grades in various layouts and reports | 1.9+ | |
Grading methods | gradingform | /grade/grading/form | Interfaces for actually performing grading in activity modules (eg Rubrics). | 2.2+ | |
Local plugins | local | /local | Generic plugins for local customisations | 2.0+ | |
Messaging consumers | message | /message/output | Send messages to users via different methods (email, sms, jabber, etc) | 2.0+ | |
Plagiarism plugins | plagiarism | /plagiarism | Define external services to process submitted files and content | 2.0+ | |
Portfolio plugins | portfolio | /portfolio | Connect external portfolio services as destinations for users to store Moodle content | 1.9+ | |
Question behaviours | qbehaviour | /question/behaviour | Control how student interact with questions during an attempt | 2.1+ | |
Question formats | qformat | /question/format | Import and export question definitions to/from the question bank | 1.6+ | |
Question types | qtype | /question/type | Different types of question (e.g. multiple-choice, drag-and-drop) that can be used in quizzes and other activities | 1.6+ | |
Quiz access rules | quizaccess | /mod/quiz/accessrule | Add conditions to when or where quizzes can be attempted, for example only from some IP addresses, or student must enter a password first | 2.2+ | |
Quiz reports | quiz | /mod/quiz/report | Display and analyse the results of quizzes, or just plug miscellaneous behaviour into the quiz module | 1.1+ | |
Reports | report | /report | Provides useful views of data in a Moodle site for admins and teachers | 2.2+ | |
Repository plugins | repository | /repository | Connect to external sources of files to use in Moodle | 2.0+ | |
SCORM reports | scormreport | /mod/scorm/report | Analysis of SCORM attempts | 2.2+ | |
Themes | theme | /theme | Change the look of Moodle by changing the the HTML and the CSS. | 2.0+ | |
TinyMCE editor add-on | tinymce | /lib/editor/tinymce/plugins | Extra functionality for the TinyMCE text editor. | ??? | |
User profile fields | profilefield | /user/profile/field | Add new types of data to user profiles | 1.9+ | |
Webservice protocols | webservice | /webservice | Define new protocols for web service communication (such as SOAP, XML-RPC, JSON, REST ...) | 2.0+ | |
Workshop allocation methods | workshopallocation | /mod/workshop/allocation | Define ways how submissions are assigned for assessment in the Workshop module | 2.0+ | |
Workshop evaluation methods | workshopeval | /mod/workshop/eval | Implement the calculation of the grade for assessment (grading grade) in theWorkshop module | 2.0+ | |
Workshop grading | strategies | workshopform | /mod/workshop/form | Define the type of the grading form and implement the calculation of the grade for submission in the Workshop module | 2.0+ |
Official Docs: https://docs.moodle.org/dev/Plugin_types
PRO TIP: You can get the most exact list of types in your version of Moodle with the following script:
PRO TIP: You can get the most exact list of types in your version of Moodle with the following script:
<?php define('CLI_SCRIPT', true); require('path/to/config.php'); // global moodle config file. print_object(get_plugin_types());
No comments:
Post a Comment