MediaWiki Language Extension Bundle

Jump to: navigation, search
shortcut: MLEB

The MediaWiki language extension bundle provides easy way to bring ultimate language support to your MediaWiki. The bundle is a collection of selected few MediaWiki extensions needed by any wiki which desires to be multilingual.


The Universal Language Selector is a must have, because it provides an essential functionality for any user regardless of the number of languages they speak: language selection, font support for displaying scripts badly supported by operating systems and input methods for typing languages that don't use the Latin alphabet. It includes freely-licensed fonts, which cover most of the major languages of America, Europe, Middle East, India and South East Asia.

Maintaining multilingual content in a wiki is a mess without the Translate extension, which is used by Wikimedia, KDE, and other sites, where hundreds of interface translations are updated every day. With Localisation Update your users will always have the latest translations freshly out of the oven. The Clean Changes extension keeps your recent changes page uncluttered from translation activity and other clutter.

Don't miss the chance to practice your rusty language skills, use the Babel extension to mark the languages you speak and find other speakers of the same language in your wiki. And finally the cldr extension is a database of language and country translations.

MLEB has a regular release schedule, so that you can easily stay on the cutting edge with the constantly improving language support. The bundle comes with clear installation and upgrade instructions (see below). The bundle is tested against MediaWiki release versions, so you can avoid most of the temporary breaks that would happen if you were using the latest development versions instead.

Release notes and downloads[edit]

Latest release[edit]

  • 2016.08:
    sha256sum: aba09ead5f2c646e5960ce2aecc36866ee092079f51598d0aab461c7655410da [1]
    Announcement and Release Notes
    • Compatible with MediaWiki: 1.26, 1.27 or above and requires PHP 5.5.9 or above.
  • Translate extension now requires Elastica extension for ElasticSearch support. Wikimedia search plugin needs to be installed for ElasticSearch 2.x series.
  • Special:Translate now has a summary field.
  • Special:Translate is much more robust thanks to improved error handling and to many small bugs having been fixed.
  • Page translation is much more robust.
  • The sandbox feature of Translate extension requires MediaWiki 1.27 or newer.
  • Translate's export functionality is now on separate special page called Special:ExportTranslations
  • The style of ULS's dialogs have been updated and polished to be more streamlined.
  • The default geoip service for Universal Language Selector is changed because the old service is discontinued.
  • Major update on webfont formats: woff2 format added, eot and svg formats dropped.

Previous releases[edit]

  • 2016.04:
    sha256sum: 113439ad94b1a75ab8616f41c4d120e12c1fa8c3888933ec136783bfbdc9bc70 [1]
    Announcement and Release Notes
    • Compatible with MediaWiki: 1.25, 1.26 or above and requires PHP 5.5.9 or above.
  • Babel and LocalisationUpdate
    • Extensions now uses extension registration.
  • CLDR:
    • Updated to CLDR 29 release.
  • Translate:
    • Message group selector now works in Internet Explorer and Edge browsers.
    • A bug was fixed that sometimes caused translation pages not to update changes to the source page after marking it for translation. After upgrading it is recommended to run scripts/refresh-translatable-pages.php to ensure no pages contain outdated content.
  • UniversalLanguageSelector:
    • Fixed issues related to the tooltip shown for language settings that sometimes caused JavaScript errors.
    • Input methods now work with VisualEditor.

Show all releases.

Downloading with Git[edit]

In your extensions directory do the following to get or update to the latest release and follow configuration instructions below.

 for ext in Babel cldr CleanChanges LocalisationUpdate Translate UniversalLanguageSelector
   if [ ! -d "$ext" ]
     git clone$ext.git
   cd $ext; git fetch --tags; git checkout 2016.08; cd ..


extensions in subdirectory[edit]

If your directory layout looks like this:


go to mediawiki directory and extract the release file:

tar xjf MediaWikiLanguageExtensionBundle-2016.08.tar.bz2

The variable you have to add to your LocalSettings.php before the configuration below is:

$EXT = "$IP/extensions";

extensions in top-level directory[edit]

If your directory layout looks like this:


go to common parent directory and extract the release file:

tar xjf MediaWikiLanguageExtensionBundle-2016.08.tar.bz2

The variables you have to add to your LocalSettings.php before the configuration below is:

$EXT = "$IP/../extensions";
$wgExtensionAssetsPath = "{$wgScriptPath}/../extensions";

Add/update your LocalSettings.php[edit]

Near the end, you have to place the configuration lines given above (pick from one of the two sections) followed by this:

wfLoadExtension( 'Babel' );

wfLoadExtension( 'cldr' );

wfLoadExtension( 'CleanChanges' );
$wgCCTrailerFilter = true;
$wgCCUserFilter = false;
$wgDefaultUserOptions['usenewrc'] = 1;

wfLoadExtension( 'LocalisationUpdate' );
$wgLocalisationUpdateDirectory = "$IP/cache";

require_once "$EXT/Translate/Translate.php";
$wgGroupPermissions['user']['translate'] = true;
$wgGroupPermissions['user']['translate-messagereview'] = true;
$wgGroupPermissions['user']['translate-groupreview'] = true;
$wgGroupPermissions['user']['translate-import'] = true;
$wgGroupPermissions['sysop']['pagetranslation'] = true;
$wgGroupPermissions['sysop']['translate-manage'] = true;
$wgTranslateDocumentationLanguageCode = 'qqq';
$wgExtraLanguageNames['qqq'] = 'Message documentation'; # No linguistic content. Used for documenting messages

wfLoadExtension( 'UniversalLanguageSelector' );
If you have existing babel categories, you need to check that the configuration matches your wiki's format. See Extension:Babel.

Update database tables[edit]

Command line[edit]

In the directory where your LocalSettings.php is located, run the following command:

php maintenance/update.php

Web browser[edit]

Go to by using your domain and path and rerun install.

Configuring and using extensions[edit]

See the respective extension documentation pages. Do note that LocalisationUpdate does nothing by default and needs additional configuration to be run periodically.


MLEB does not use version-specific branches. It's a snapshot from master which is verified to be working with the specified MediaWiki releases.

MLEB releases are created with a tool called Melange. If you are interested in that code (e.g. you want to change its code), see the Melange repository in Git.