Development:Plugins: Difference between revisions
From MoodleDocs
(Copied from https://docs.moodle.org/en/Development:Developer_documentation) |
No edit summary |
||
(One intermediate revision by one other user not shown) | |||
Line 1: | Line 1: | ||
The M in Moodle stands for modular, and the easiest, most maintainable way to add new functionality to Moodle is by using one of the many plugin APIs. There are many types of plugin you can write: | The M in Moodle stands for modular, and the easiest, most maintainable way to add new functionality to Moodle is by using one of the many plugin APIs. | ||
There are many '''types''' of plugin you can write: | |||
*[[Development:Modules|Activity modules]], see also [[Development:NEWMODULE Documentation]] (work in progress) | *[[Development:Modules|Activity modules]], see also [[Development:NEWMODULE Documentation]] (work in progress) | ||
Line 31: | Line 33: | ||
Sometimes it is not possible to write a proper plugin for what you want to do, in which case you may have to resort to using the [[Development:Local_customisation|local customisations]] hook. | Sometimes it is not possible to write a proper plugin for what you want to do, in which case you may have to resort to using the [[Development:Local_customisation|local customisations]] hook. | ||
[[Category:Coding guidelines|Plugins]] |
Latest revision as of 06:05, 23 October 2010
The M in Moodle stands for modular, and the easiest, most maintainable way to add new functionality to Moodle is by using one of the many plugin APIs.
There are many types of plugin you can write:
- Activity modules, see also Development:NEWMODULE Documentation (work in progress)
- Admin reports
- Assignment types
- Authentication plugins
- Blocks
- Course formats
- Course reports
- Database fields
- Database presets
- Enrolment plugins
- Filters
- Gradebook plugins
- Portfolio Plugins
- Question types
- Question import/export formats
- Quiz reports
- Repository plugins
- Resource types
- Search engine adapters
General information that applies to all types of plugins
Please see the Guidelines for contributed code for an overview of how to contribute to the Moodle code.
Sometimes it is not possible to write a proper plugin for what you want to do, in which case you may have to resort to using the local customisations hook.