Extension:CLDR
|
CLDR Release status: stable |
|||
|---|---|---|---|
| Implementation | Parser function | ||
| Description | Provides functions to localize the names of languages, countries, and currencies based on their language code. | ||
| Author(s) | Niklas Laxström, Kaldari | ||
| Last version | 3.0.0 (CLDR 2.0.1) (2011-02-02) | ||
| MediaWiki | 1.12+ | ||
| Database changes | no | ||
| License | GPL 2.0 | ||
| Download | Download snapshot Subversion [Help] |
||
| Example | Translatewiki.net | ||
|
|||
|
Check usage (experimental) |
|||
The CLDR extension contains local language names for different languages, countries, and currencies extracted from CLDR data.
Contents |
[edit] Installation
- Download the files from SVN or download a snapshot. Choose the version that matches your version of MediaWiki.
- Create a directory
cldrin your$IP/extensionsdirectory. - Extract the files to this
$IP/extensions/cldrdirectory. - Add
to the bottom of LocalSettings.php.require_once( "$IP/extensions/cldr/cldr.php" );
- Installation can now be verified through Special:Version of your wiki.
[edit] Updating data
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/1.8.0/core.zip unzip core.zip -d core php rebuild.php
[edit] Usage and parameters
[edit] Language names
CLDR defines the class LanguageNames which has a static method, getNames(). LanguageNames::getNames accepts three parameters:
- code - the ISO 639 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
[edit] Example
The following example sets a variable to the list of all languages in MediaWiki and CLDR in English.
if ( is_callable( array( 'LanguageNames', 'getNames' ) ) ) { $languages = LanguageNames::getNames( 'en' , LanguageNames::FALLBACK_NORMAL, LanguageNames::LIST_MW_AND_CLDR ); } else { // If we need to display something, use this as fallback $languages = Language::getLanguageNames( false ); }
[edit] Country names
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
[edit] Example
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' ); }
[edit] Currency names
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
[edit] Example
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' ); }
[edit] See also
|
|
This extension is being used on one or more of Wikimedia's wikis. This means that the extension is stable and works well enough to be used by such high traffic websites. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page. |