Note:

If you want to create a new page for developers, you should create it on the Moodle Developer Resource site.

Plugin types: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
Line 7: Line 7:
*[[Admin reports]]
*[[Admin reports]]
*[[Admin tools]]
*[[Admin tools]]
*[[Assignment types|Assignment types]]
*[[Assignment types]]
*[[Authentication plugins]]
*[[Authentication plugins]]
*[[Blocks]]
*[[Blocks]]
*Content editors (2.0 onwards)
*[[Course formats]]
*[[Course formats]]
*[[Course reports]]
*[[Course reports]]
Line 22: Line 21:
*[[Gradebook import]]
*[[Gradebook import]]
*[[Gradebook reports]]
*[[Gradebook reports]]
*[[Grading_methods]]
*[[Grading methods]]
*[[Local plugins]]
*[[Local plugins]]
*[[Messaging consumers]] (2.0 onwards)
*[[Messaging consumers]] (2.0 onwards)
Line 35: Line 34:
*[[Resource types]] (1.9 and earlier only)
*[[Resource types]] (1.9 and earlier only)
*[[SCORM reports]]
*[[SCORM reports]]
*[[Themes]] (2.0 onwards) (see [[Theme 1.9]] for older plugins).
*[[Themes]] (2.0 onwards) (see [[Themes 1.9]] for older versions).
*[[User profile fields]]
*[[User profile fields]]
*[[Creating_a_web_service_and_a_web_service_function|Web services]]
*[[Webservice protocols]]
*[[Webservice protocols]]
*Workshop allocators (2.0 onwards)
*Workshop allocators (2.0 onwards)

Revision as of 06:30, 30 January 2012

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:

Other 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.

See also