Learn to use Moodle

This is not a Government of Canada website

The purpose of this website is to provide a working example of the WET-BOEW-Moodle theme created by TNG Consulting Inc. together with the Government of Canada. Demo courses are only available in English however multi-language courses are supported.

Authoring Moodle content in multiple languages

So, you want to create multilingual content on your Moodle site but hate the thought of having the text of 2 or more languages always appear on every page?

Moodle LMS support any number of languages. Unfortunately there are still many core and third party Moodle plugins and themes that still do not support multilingual content. The good news is that the situation is improving with each code release.

One Moodle plugin which has made life a lot easier when implementing multilingual courses is the free Multi-Language Content (v2) by Iñaki Arenaza available on Moodle.org. Unlike the core HTML based Multi-language Content filter plugin that comes bundled with Moodle which requires you to understand the complexities of HTML and insert inline <span> tags in just the right place, hidden from the preview editor, the Multi-Language Content (v2) filter has a simple plain text non-HTML syntax that enables you to wrap your content in plain text language markup tags like {mlang en}Hello{mlang}{mlang fr}Bonjour{mlang}. These {mlang} tags can be used inline as well as in block mode. As a result of the use of these tags, Moodle will only display the content tagged for the current language being displayed in Moodle.

Be sure to follow the installation instructions as you need to enable the filter in order for it to have any effect. Here is how you would use it in your content:

Inline example:

This content is in English.

Block example:


This content is in English. 
You can have multiple paragraphs.

As previously mentioned, you do not need to know or insert any HTML or do any programming in order to make this work. Just type the {mlang} tags around your content just like you would any other content.

As a result, when your user chooses to view Moodle in English, you will only see the English text. When viewing Moodle in French, you will only see the French text. You can actually have as many languages as you want by repeating the series of {mlang} sections.

If you are working with German, you would use (the order of the languages is not important):

This content is in English.

Portuguese? Not a problem:

This content is in English.

If you wanted to have something only displayed in a particular language and not in others, you could accomplish this by adding something like {mlang fr}Disponible en anglais seulement{mlang}.

Where do you find these 2-letter codes? They are actually an internationally recognized standard coding representations of languages known as ISO 639-1.

Instructional designers/Moodle course developers will really appreciate not having to edit HTML codes in the Moodle editor.

Note that this feature is not available on learn.moodle.org or moodlecloud.com. You can only install this language filter plugin on your own Moodle site.

While most of Moodle supports this, support can also vary depending on the theme and plugins you use. If your theme or plugin doesn't support this, contact the developer and ask them to fix this problem by making use of the Moodle "format_text()" or "format_string()" functions. You don't need to know the technical details. The developer will hopefully fix the problem and publish an updated version of their plugin or theme.

Last modified: Thursday, 09 January 2020, 1:42 AM
Date modified: