Marco Cevoli at translation company Qabiria has created a process to translate Moodle courses. The 5-step procedure focuses on finding the list of sentences, or for developers, “strings”, to be translated, which means this does not cover translation of additional media, like PDF files.
On the Moodle end, you will need administration permissions for the download and upload operations.
1. Download the course
On your Moodle, go to
Administration > Course administration > Backup. Select the elements you wish to translate, and download. You will get an MBZ file, which is just a compressed ZIP file with another extension.
Read more about Moodle Course Backups here.
2. Find and isolate the strings
Extract the file to retrieve the XML files, which are the ones containing the strings to translate.
Cevoli adds the step to convert XML to XLIFF. XLIFF file formats prevent XML information loss. Most modern translators can handle both XML and XLIFF files, but the localization features might be the reason of choosing the latter.
Follow Qabiria’s post on conversion using Okapi, or directly through Okapi Extract text for Translation tutorial..
3. Replace the translated strings in the course
Okapi Framework is one way to replace, on the original course package, the XML files with the new, translated ones.
You can also do it manually, in which case you need to extract the course package in folders, replace the files, and then repackage back. You might need to change the
.mbz extension to
.zip to open it, and then turn it back to
.mbz once you have replaced the XML files and repackaged as a ZIP. The final, translated course package should be an MBZ file.
4. Create a new Moodle course
Back on Moodle, open the original course and perform a Course Restore. On the picker menu, choose only the parts of the course you translated. This optimizes file size and therefore uploading speed. The translated sections usually are
- Groups and Groupings
Hit “Perform restore”, and you are done! Make sure you review the course thoroughly before opening it to students. (Of course, you can also encourage them to find and report translation errors.)
See a webcast on Course Restore here.
Bonus: Enable Moodle Language Pack
If you want Moodle menus to be displayed in the same language as the translation, install the corresponding Language Pack. There are 100 languages supported.
Read the full post at Qabiria here.
And for more on translating Moodle, visit Moodle AMOS page, or go to lang.moodle.org.
This Moodle Practice related post is made possible by: MoodleRooms the open source learning experience by Blackboard. Rediscover Moodle. Click here to learn more.
Hi, thanks a lot for sharing this! Just a couple of remarks: 1) the conversion from XML to XLIFF is necessary to extract only the textual contents that need to be translated. Otherwise, you would get the whole XML content, making the translation step really difficult (most of the XML should be left untouched). 2) The conversion from XLIFF to XML cannot be performed from within the CAT tool, because the initial conversion XML to XLIFF is done in Okapi and only Okapi ‘knows’ how to convert those files appropriately, putting the translated content where it belongs. Trying to save the XLIFF to XML (which is by the way impossible in SDL Trados or OmegaT) would make the final package unusable. Oh, finally, my last name is Cevoli, not Cevali… 🙂
Thank you for the detailed clarification, Marco. We’ve updated the post to reflect your comments.