Skip to main content

18 docs tagged with "Plugins"

View All Tags

Advanced grading API

Advanced grading was introduced in Moodle 2.2 for grading of assignments. It is intended to be used for grading of other types of activities in the later versions.

Antivirus plugins

Integrate your preferred Antivirus tool to with Moodle to automatically check new file uploads.

Block plugins

Block plugins allow you to show supplemental information, and features, within different parts of Moodle.

Common files

This page describes the common files which may be present in any Moodle subsystem or plugin type. Some of these files are mandatory and must exist within a component, whilst others are optional.

Course format

Course formats are plugins that determine the layout of course resources.


A description of the plugin scheduled task configuration file

Enrolment plugins

Moodle provides a number of ways of managing course enrolment, called enrolment plugins. Each course can decide its enabled enrolment plugins instances and any enrolment plugin can define a workflow the user must follow in order to enrol in the course.

Filter plugins

Filters are a way to automatically transform content before it is output. Filters may be used to:

Local plugins

The recommended way to add new functionality to Moodle is to create a new standard plugin (for example, activity, block, authentication, enrol). The local plugin-type is mostly suitable for things that do not fit into these standard plugin types.

Migrating 3.11 formats

The new course editor introduced n Moodle 4.0 reimplements most of the previous webservices, AMD modules, and internal logic of the course rendering. However, all formats since 3.11 will use the previous libraries by default until its final deprecation in Moodle 4.3. This document collects the main adaptations any 3.11 course format will require to continue working when this happens.

Plugin types

Moodle is a powerful, and very extensible, Learning Management System. One of its core tenets is its extensibility, and this is primarily achieved through the development of plugins.

Plugin Upgrades

The Upgrade API is a core API which allows your plugin to manage features of its own installation, and upgrade. Every plugin includes a version which allows the Upgrade API to apply only the required changes.

Question Bank plugins

Question type plugins allow you to extend the functionality of the Moodle Question bank.

Repository plugins

Repository plugin allow Moodle to bring contents into Moodle from external repositories.


A description of the library tag.php file, describing what plugins have tags where their callbacks are located.


A description of the plugin version.php file, describing the various features

Writing a new service

This documentation covers the creation of a new external service for use in a web service of a fictional local plugin, local_groupmanager.