Extension:CLDR
| CLDR Release status: stable |
|||
|---|---|---|---|
| Implementation | Parser function | ||
| Description | Provides functions to localize the names of languages, countries, currencies, and time units based on their language code. | ||
| Author(s) |
|
||
| Latest version | 4.3.0 (CLDR 29) (Continous updates) | ||
| MediaWiki | 1.30+ | ||
| Database changes | No | ||
| Composer | mediawiki/cldr | ||
| License | GPL-2.0+, data variant of BSD 3-clauses | ||
| Download | Included in Language Extension Bundle or README |
||
| Example | Translatewiki.net | ||
|
|||
| Translate the CLDR extension if it is available at translatewiki.net | |||
| Check usage and version matrix. | |||
The CLDR extension contains local language names for different languages, countries, currencies, and time units extracted from CLDR data. See translatewiki:CLDR for information.
Contents
Installation[edit]
- Download and place the file(s) in a directory called
cldrin yourextensions/folder.
- Add the following code at the bottom of your LocalSettings.php:
wfLoadExtension( 'cldr' );
Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
To users running MediaWiki 1.26 or earlier:
The instructions above describe the new way of installing this extension using wfLoadExtension() If you need to install this extension on these earlier versions (MediaWiki 1.26 and earlier), instead of wfLoadExtension( 'cldr' );, you need to use:
require_once "$IP/extensions/cldr/cldr.php";
Updating data[edit]
The CLDR extension comes with data pre-populated in the language files, but if you want to get the latest data from the Unicode Consortium, you'll need to download it from the CLDR site and then run a rebuild script.
Download newest data from CLDR site:
http://www.unicode.org/cldr/repository_access.html
Example (from within the cldr directory):
wget http://www.unicode.org/Public/cldr/latest/core.zip
unzip core.zip -d core
php rebuild.php
Usage and parameters[edit]
Language names[edit]
CLDR defines the class LanguageNames which has a static method, getNames(). LanguageNames::getNames accepts three parameters:
- code - the ISO 639 (see here for details) code of the preferred language to return the list in
- fbMethod - fallback method. Should be set to one of the following:
- LanguageNames::FALLBACK_NATIVE (default): Missing entries fallback to the native name
- LanguageNames::FALLBACK_NORMAL: Missing entries fallback through the fallback chain
- list - which languages to return. Should be set to one of the following:
- LanguageNames::LIST_MW_SUPPORTED: Only languages that have localization in MediaWiki
- LanguageNames::LIST_MW (default): All languages that are in Names.php
- LanguageNames::LIST_MW_AND_CLDR: All languages that are either in MediaWiki or in CLDR
Example[edit]
The language names are best access with MediaWiki core functions:
// Japanisch
$name = Language::fetchLanguageName( 'ja', 'de', 'all' );
Country names[edit]
CLDR defines the class CountryNames which has a static method, getNames(). CountryNames::getNames accepts one parameter:
- code - the ISO 639 code of the preferred language to return the list in
Example[edit]
The following example sets a variable to the list of all countries in CLDR in French.
if ( is_callable( array( 'CountryNames', 'getNames' ) ) ) {
$countries = CountryNames::getNames( 'fr' );
}
Currency names[edit]
CLDR defines the class CurrencyNames which has a static method, getNames(). CurrencyNames::getNames accepts one parameter:
- code - the ISO 639 code of the preferred language to return the list in
Example[edit]
The following example sets a variable to the list of all currencies in CLDR in German.
if ( is_callable( array( 'CurrencyNames', 'getNames' ) ) ) {
$currencies = CurrencyNames::getNames( 'de' );
}
Note: CLDR includes a very large number of currencies, including many that are no longer in use.
See also[edit]
| This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page. |
- Extensions with unknown license
- Stable extensions
- Parser function extensions
- Extensions without a compatibility policy
- Extensions supporting Composer
- Extensions in Wikimedia version control
- LanguageGetTranslatedLanguageNames extensions
- GetHumanTimestamp extensions
- All extensions
- Extensions used on Wikimedia
- Localisation extensions