302 lines
8.8 KiB
PHP
302 lines
8.8 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @return mixed
|
|
*/
|
|
function icl_get_languages_names() {
|
|
static $__icl_lang_names_cached = null;
|
|
|
|
if ( $__icl_lang_names_cached === null ) {
|
|
$serialized_languages = file_get_contents( WPML_PLUGIN_PATH . '/res/languages.json' );
|
|
$__icl_lang_names = json_decode( $serialized_languages, true );
|
|
|
|
$__icl_lang_names_cached = $__icl_lang_names;
|
|
}
|
|
|
|
return $__icl_lang_names_cached;
|
|
|
|
}
|
|
|
|
|
|
/**
|
|
* @return array
|
|
*/
|
|
function icl_get_languages_codes() {
|
|
static $result = null;
|
|
|
|
if ( null === $result ) {
|
|
$result = array(
|
|
'Abkhazian' => 'ab',
|
|
'Afar' => 'aa',
|
|
'Afrikaans' => 'af',
|
|
'Akan' => 'ak',
|
|
'Albanian' => 'sq',
|
|
'Amharic' => 'am',
|
|
'Arabic' => 'ar',
|
|
'Armenian' => 'hy',
|
|
'Assamese' => 'as',
|
|
'Avar' => 'av',
|
|
'Avestan' => 'ae',
|
|
'Aymara' => 'ay',
|
|
'Azerbaijani' => 'az',
|
|
'Bambara' => 'bm',
|
|
'Bashkir' => 'ba',
|
|
'Basque' => 'eu',
|
|
'Belarusian' => 'be',
|
|
'Bengali' => 'bn',
|
|
'Bhutani' => 'dz',
|
|
'Bihari' => 'bh',
|
|
'Bislama' => 'bi',
|
|
'Bosnian' => 'bs',
|
|
'Breton' => 'br',
|
|
'Bulgarian' => 'bg',
|
|
'Burmese' => 'my',
|
|
'Cambodian' => 'km',
|
|
'Catalan' => 'ca',
|
|
'Chamorro' => 'ch',
|
|
'Chechen' => 'ce',
|
|
'Chichewa' => 'ny',
|
|
'Chinese (Simplified)' => 'zh-hans',
|
|
'Chinese (Traditional)' => 'zh-hant',
|
|
'Chuvash' => 'cv',
|
|
'Cornish' => 'kw',
|
|
'Corsican' => 'co',
|
|
'Cree' => 'cr',
|
|
'Croatian' => 'hr',
|
|
'Czech' => 'cs',
|
|
'Danish' => 'da',
|
|
'English' => 'en',
|
|
'Esperanto' => 'eo',
|
|
'Estonian' => 'et',
|
|
'Ewe' => 'ee',
|
|
'Faeroese' => 'fo',
|
|
'Fiji' => 'fj',
|
|
'Finnish' => 'fi',
|
|
'French' => 'fr',
|
|
'Frisian' => 'fy',
|
|
'Fulah' => 'ff',
|
|
'Galician' => 'gl',
|
|
'Georgian' => 'ka',
|
|
'German' => 'de',
|
|
'Greek' => 'el',
|
|
'Greenlandic' => 'kl',
|
|
'Guarani' => 'gn',
|
|
'Gujarati' => 'gu',
|
|
'Hausa' => 'ha',
|
|
'Hebrew' => 'he',
|
|
'Herero' => 'hz',
|
|
'Hindi' => 'hi',
|
|
'Hiri Motu' => 'ho',
|
|
'Hungarian' => 'hu',
|
|
'Icelandic' => 'is',
|
|
'Igbo' => 'ig',
|
|
'Indonesian' => 'id',
|
|
'Interlingua' => 'ia',
|
|
'Interlingue' => 'ie',
|
|
'Inuktitut' => 'iu',
|
|
'Inupiak' => 'ik',
|
|
'Irish' => 'ga',
|
|
'Italian' => 'it',
|
|
'Japanese' => 'ja',
|
|
'Javanese' => 'jv',
|
|
'Kannada' => 'kn',
|
|
'Kanuri' => 'kr',
|
|
'Kashmiri' => 'ks',
|
|
'Kazakh' => 'kk',
|
|
'Kikuyu' => 'ki',
|
|
'Kinyarwanda' => 'rw',
|
|
'Kirghiz' => 'ky',
|
|
'Kirundi' => 'rn',
|
|
'Komi' => 'kv',
|
|
'Kongo' => 'kg',
|
|
'Korean' => 'ko',
|
|
'Kurdish' => 'ku',
|
|
'Kwanyama' => 'kj',
|
|
'Laothian' => 'lo',
|
|
'Latvian' => 'lv',
|
|
'Lingala' => 'ln',
|
|
'Lithuanian' => 'lt',
|
|
'Luganda' => 'lg',
|
|
'Luxembourgish' => 'lb',
|
|
'Macedonian' => 'mk',
|
|
'Malagasy' => 'mg',
|
|
'Malay' => 'ms',
|
|
'Malayalam' => 'ml',
|
|
'Maldivian' => 'dv',
|
|
'Maltese' => 'mt',
|
|
'Manx' => 'gv',
|
|
'Maori' => 'mi',
|
|
'Marathi' => 'mr',
|
|
'Marshallese' => 'mh',
|
|
'Moldavian' => 'mo',
|
|
'Mongolian' => 'mn',
|
|
'Nauru' => 'na',
|
|
'Navajo' => 'nv',
|
|
'Ndonga' => 'ng',
|
|
'Nepali' => 'ne',
|
|
'North Ndebele' => 'nd',
|
|
'Northern Sami' => 'se',
|
|
'Dutch' => 'nl',
|
|
'Norwegian Bokmål' => 'no',
|
|
'Norwegian Nynorsk' => 'nn',
|
|
'Occitan' => 'oc',
|
|
'Old Slavonic' => 'cu',
|
|
'Oriya' => 'or',
|
|
'Oromo' => 'om',
|
|
'Ossetian' => 'os',
|
|
'Pali' => 'pi',
|
|
'Pashto' => 'ps',
|
|
'Persian' => 'fa',
|
|
'Polish' => 'pl',
|
|
'Portuguese, Brazil' => 'pt-br',
|
|
'Portuguese, Portugal' => 'pt-pt',
|
|
'Punjabi' => 'pa',
|
|
'Quechua' => 'qu',
|
|
'Rhaeto-Romance' => 'rm',
|
|
'Romanian' => 'ro',
|
|
'Russian' => 'ru',
|
|
'Samoan' => 'sm',
|
|
'Sango' => 'sg',
|
|
'Sanskrit' => 'sa',
|
|
'Sardinian' => 'sc',
|
|
'Scots Gaelic' => 'gd',
|
|
'Serbian' => 'sr',
|
|
'Serbo-Croatian' => 'sh',
|
|
'Sesotho' => 'st',
|
|
'Setswana' => 'tn',
|
|
'Shona' => 'sn',
|
|
'Sindhi' => 'sd',
|
|
'Singhalese' => 'si',
|
|
'Siswati' => 'ss',
|
|
'Slavic' => 'sla',
|
|
'Slovak' => 'sk',
|
|
'Slovenian' => 'sl',
|
|
'Somali' => 'so',
|
|
'South Ndebele' => 'nr',
|
|
'Spanish' => 'es',
|
|
'Sudanese' => 'su',
|
|
'Swahili' => 'sw',
|
|
'Swedish' => 'sv',
|
|
'Tagalog' => 'tl',
|
|
'Tahitian' => 'ty',
|
|
'Tajik' => 'tg',
|
|
'Tamil' => 'ta',
|
|
'Tatar' => 'tt',
|
|
'Telugu' => 'te',
|
|
'Thai' => 'th',
|
|
'Tibetan' => 'bo',
|
|
'Tigrinya' => 'ti',
|
|
'Tonga' => 'to',
|
|
'Tsonga' => 'ts',
|
|
'Turkish' => 'tr',
|
|
'Turkmen' => 'tk',
|
|
'Twi' => 'tw',
|
|
'Uighur' => 'ug',
|
|
'Ukrainian' => 'uk',
|
|
'Urdu' => 'ur',
|
|
'Uzbek' => 'uz',
|
|
'Venda' => 've',
|
|
'Vietnamese' => 'vi',
|
|
'Welsh' => 'cy',
|
|
'Wolof' => 'wo',
|
|
'Xhosa' => 'xh',
|
|
'Yiddish' => 'yi',
|
|
'Yoruba' => 'yo',
|
|
'Zhuang' => 'za',
|
|
'Zulu' => 'zu',
|
|
);
|
|
}
|
|
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* @return array
|
|
*/
|
|
function icl_get_languages_locales() {
|
|
static $result = null;
|
|
|
|
if ( ! $result ) {
|
|
$result = array(
|
|
'af' => 'af_ZA',
|
|
'ar' => 'ar',
|
|
'az' => 'az',
|
|
'be' => 'be_BY',
|
|
'bg' => 'bg_BG',
|
|
'bn' => 'bn_BD',
|
|
'bs' => 'bs_BA',
|
|
'ca' => 'ca',
|
|
'cs' => 'cs_CZ',
|
|
'cy' => 'cy_GB',
|
|
'da' => 'da_DK',
|
|
'de' => 'de_DE',
|
|
'el' => 'el',
|
|
'en' => 'en_US',
|
|
'eo' => 'eo_UY',
|
|
'es' => 'es_ES',
|
|
'et' => 'et',
|
|
'eu' => 'eu_ES',
|
|
'fa' => 'fa_IR',
|
|
'fi' => 'fi',
|
|
'fo' => 'fo_FO',
|
|
'fr' => 'fr_FR',
|
|
'ga' => 'ga_IE',
|
|
'gl' => 'gl_ES',
|
|
'he' => 'he_IL',
|
|
'hi' => 'hi_IN',
|
|
'hr' => 'hr',
|
|
'hu' => 'hu_HU',
|
|
'hy' => 'hy_AM',
|
|
'id' => 'id_ID',
|
|
'is' => 'is_IS',
|
|
'it' => 'it_IT',
|
|
'ja' => 'ja',
|
|
'ka' => 'ge_GE',
|
|
'km' => 'km_KH',
|
|
'ko' => 'ko_KR',
|
|
'ku' => 'ckb',
|
|
'lt' => 'lt_LT',
|
|
'lv' => 'lv_LV',
|
|
'mg' => 'mg_MG',
|
|
'mk' => 'mk_MK',
|
|
'mn' => 'mn_MN',
|
|
'ms' => 'ms_MY',
|
|
'mt' => 'mt_MT',
|
|
'nb' => 'nb_NO',
|
|
'ne' => 'ne',
|
|
'no' => 'nb_NO',
|
|
'nn' => 'nn_NO',
|
|
'ni' => 'ni_ID',
|
|
'nl' => 'nl_NL',
|
|
'pa' => 'pa_IN',
|
|
'pl' => 'pl_PL',
|
|
'pt-br' => 'pt_BR',
|
|
'pt-pt' => 'pt_PT',
|
|
'qu' => 'quz_PE',
|
|
'ro' => 'ro_RO',
|
|
'ru' => 'ru_RU',
|
|
'si' => 'si_LK',
|
|
'sk' => 'sk_SK',
|
|
'sl' => 'sl_SI',
|
|
'so' => 'so_SO',
|
|
'sq' => 'sq_AL',
|
|
'sr' => 'sr_RS',
|
|
'su' => 'su_ID',
|
|
'sv' => 'sv_SE',
|
|
'ta' => 'ta_IN',
|
|
'tg' => 'tg_TJ',
|
|
'th' => 'th',
|
|
'tr' => 'tr_TR',
|
|
'ug' => 'ug_CN',
|
|
'uk' => 'uk',
|
|
'ur' => 'ur',
|
|
'uz' => 'uz_UZ',
|
|
'vi' => 'vi_VN',
|
|
'zh-hans' => 'zh_CN',
|
|
'zh-hant' => 'zh_TW',
|
|
);
|
|
}
|
|
|
|
return $result;
|
|
}
|