There are optional plugins available that can extend Moodle in all sorts of ways - new activities, new quiz question types, new reports, integrations with other systems and many more. This page gives some important advice you should consider before adding them and general advice on how to install them.

You should always look for a 'readme' file or other documentation supplied with the plugin and read that carefully.

Contents

Before you do anything else...

VERY IMPORTANT: There is no formal system for reviewing and approving Moodle plugins. Please be careful when considering using one. It may not do what you expect, it may have serious security issues or it may even not work at all.

Do you really need the plugin? More functionality means more things to support, more things to (potentially) go wrong and more things to worry about at upgrade time.

Is the plugin supported and maintained? If something goes wrong can you get support? Will bugs be fixed?

If the plugin does not work in a future version of Moodle, what will you do about it?

Beware of patches! If a plugin modifies or replaces core files then be very careful. It can only be guaranteed to work with the exact build (version) of Moodle it was created for and is highly unlikely to survive a Moodle upgrade.

Moodle requirements

You must have access to your Moodle code files to upload or install the plugin. If you installed Moodle in the first place then you should be fine. There is no way to install plugins through the web interface.

Your plugin may impose additional requirements on the server. In particular, plugins to access other systems or services may need specific PHP plugins (e.g. LDAP or other database drivers). Check the documentation.

NOTE: Make sure you select the correct version. Most plugins for Moodle 2.0+ will work in all 2.x versions of Moodle. Question Types changed in Moodle 2.1 and require specific plugins for Moodle 2.1+. Plugins (& Themes) for Moodle 1.9 and earlier will NOT work. There is no point trying!

Module installation

First, establish the correct place in the moodle code 'tree' for the plugin. Some plugins need elements installed in multiple locations. To complicate matters not everybody packages up plugins in the same way. It's best to unzip/unpack the plugin in an empty directory first just to see what it looks like and to check for 'readme' files. Common locations are (there are others):

/path/to/moodle/mod/ - modules (i.e. activities and resources)

/path/to/moodle/blocks/ - blocks (in the sidebars)

/path/to/moodle/question/type/ - questiontypes

/path/to/moodle/course/format/ - course formats

/path/to/moodle/admin/report/ - admin reports

/path/to/moodle/theme/ - themes

Then:

Download the zip file

Upload or copy it to your Moodle server

Unzip it in the right place for the plugin type (or follow plugin instructions).

In your Moodle site (as admin) go to Settings > Site administration > Notifications (you should, for most plugin types, get a message saying the plugin is installed):

Test the plugin

If you have problems...

Check the file permissions. The web server needs to be able to read the plugin files. If the the rest of Moodle works then try to make the plugin permissions and ownership match.

Did you definitely unzip or install the block in the correct place?

Because Moodle scans plugin folders for new plugins you cannot have any other files or folders there. Make sure you deleted the zip file and don't try to rename (for example) an old version of the plugin to some other name - it will break.

Make sure the directory name for the plugin is correct. All the names have to match. If you change the name then it won't work.

Ask in the appropriate forum in Using Moodle section 3, 'Moodle contrib'. Make sure you describe your system (including versions of MySQL, PHP etc.), what you tried and what happened. Copy and paste error messages exactly. Please provide the link to the version of the plugin you downloaded (some have very similar names).