In the older versions of WordPress the language files were kept locally within the WordPress installation files (wp-content/languages) however, in WordPress versions from about 4 onwards they’ve changed how the site language is managed. As always, before you do anything, back everything up, have a plan for restoring your site if you make a cock-up, don’t attempt this if you’re not 100% sure you are able to do it successfully. In other words, messing about with your site files if you don’t really know what you’re doing is very risky and you can easily break your site!
Check your WordPress version
Firstly you need to check your WordPress version. The simplest way to do this by logging into your website dashboard and checking the updates page, or use a site like WhatCMS (https://whatcms.org) to find out. WordPress versions prior to 4.x click here to see the old tutorial to change your site language.
Note: It may be possible to change your site language by creating a language file and adding the language files as in the previous tutorial but I’ve not tried this yet. If you try it and it does or doesn’t work, please let me know
WordPress versions 4.x onwards can use the following tutorial to change their site language.
- Log into your site via FTP or file manager
- Open your wp_config.php file for editing (this is in the main site directory where you’ll also find files like ‘index.php’ and ‘wp-login.php’ along with folders called ‘wp-admin’ and ‘wp-content’
- Within the wp_config.php file you need to find the line of code ‘define(‘WPLANG’, ”);’ – the most recent site I changed this was on line 147. Try using CTRL+F to find the word ‘WPLANG’
- Find your WordPress Locale Code for the language you want. For example, UK english the locale code is ‘en_GB’ or for Belgian French the locale code is ‘fr_BE’. There is a full list of the WordPress Locale Codes at the bottom of this post (try using CTRL+F to find the one you need)
- Add the WordPress Locale Code to the line of code from step 3 within the empty apostrophes, for example, to change your site language to UK English, it would go from looking like this define(‘WPLANG’, ”); to looking like this define(‘WPLANG’, ‘en_GB’); (see illustration below)
- Save the updated wp_config.php file
- Log into your site dashboard and go to ‘Settings > General > Site Language’ where you will now find your new language in the drop-down box. Change this and save. Done
WordPress Locale Codes – full list
You may want to use CTRL+F to find the language you’re looking for
Language Name | Language Code | WordPress Locale Code |
Afrikaans | af | af |
Akan | ak | ak |
Albanian | sq | sq |
Amharic | am | am |
Arabic | ar | ar |
Armenian | hy | hy |
Aromanian | rup | rup_MK |
Assamese | as | as |
Azerbaijani | az | az |
Azerbaijani (Turkey) | az-tr | az_TR |
Bashkir | ba | ba |
Basque | eu | eu |
Belarusian | bel | bel |
Bengali | bn | bn_BD |
Bosnian | bs | bs_BA |
Bulgarian | bg | bg_BG |
Burmese | mya | my_MM |
Catalan | ca | ca |
Catalan (Balear) | bal | bal |
Chinese (China) | zh-cn | zh_CN |
Chinese (Hong Kong) | zh-hk | zh_HK |
Chinese (Taiwan) | zh-tw | zh_TW |
Corsican | co | co |
Croatian | hr | hr |
Czech | cs | cs_CZ |
Danish | da | da_DK |
Dhivehi | dv | dv |
Dutch | nl | nl_NL |
Dutch (Belgium) | nl-be | nl_BE |
English | en | en_US |
English (Australia) | en-au | en_AU |
English (Canada) | en-ca | en_CA |
English (UK) | en-gb | en_GB |
Esperanto | eo | eo |
Estonian | et | et |
Faroese | fo | fo |
Finnish | fi | fi |
French (Belgium) | fr-be | fr_BE |
French (France) | fr | fr_FR |
Frisian | fy | fy |
Fulah | fuc | fuc |
Galician | gl | gl_ES |
Georgian | ka | ka_GE |
German | de | de_DE |
German (Switzerland) | de-ch | de_CH |
Greek | el | el |
Guaraní | gn | gn |
Gujarati | gu | gu_IN |
Hawaiian | haw | haw_US |
Hazaragi | haz | haz |
Hebrew | he | he_IL |
Hindi | hi | hi_IN |
Hungarian | hu | hu_HU |
Icelandic | is | is_IS |
Ido | ido | ido |
Indonesian | id | id_ID |
Irish | ga | ga |
Italian | it | it_IT |
Japanese | ja | ja |
Javanese | jv | jv_ID |
Kannada | kn | kn |
Kazakh | kk | kk |
Khmer | km | km |
Kinyarwanda | kin | kin |
Kirghiz | ky | ky_KY |
Korean | ko | ko_KR |
Kurdish (Sorani) | ckb | ckb |
Lao | lo | lo |
Latvian | lv | lv |
Limburgish | li | li |
Lingala | lin | lin |
Lithuanian | lt | lt_LT |
Luxembourgish | lb | lb_LU |
Macedonian | mk | mk_MK |
Malagasy | mg | mg_MG |
Malay | ms | ms_MY |
Malayalam | ml | ml_IN |
Marathi | mr | mr |
Mingrelian | xmf | xmf |
Mongolian | mn | mn |
Montenegrin | me | me_ME |
Nepali | ne | ne_NP |
Norwegian (Bokmål) | nb | nb_NO |
Norwegian (Nynorsk) | nn | nn_NO |
Oriya | ory | ory |
Ossetic | os | os |
Pashto | ps | ps |
Persian | fa | fa_IR |
Persian (Afghanistan) | fa-af | fa_AF |
Polish | pl | pl_PL |
Portuguese (Brazil) | pt-br | pt_BR |
Portuguese (Portugal) | pt | pt_PT |
Punjabi | pa | pa_IN |
Rohingya | rhg | rhg |
Romanian | ro | ro_RO |
Russian | ru | ru_RU |
Russian (Ukraine) | ru-ua | ru_UA |
Rusyn | rue | rue |
Sakha | sah | sah |
Sanskrit | sa-in | sa_IN |
Sardinian | srd | srd |
Scottish Gaelic | gd | gd |
Serbian | sr | sr_RS |
Sindhi | sd | sd_PK |
Sinhala | si | si_LK |
Slovak | sk | sk_SK |
Slovenian | sl | sl_SI |
Somali | so | so_SO |
South Azerbaijani | azb | azb |
Spanish (Argentina) | es-ar | es_AR |
Spanish (Chile) | es-cl | es_CL |
Spanish (Colombia) | es-co | es_CO |
Spanish (Mexico) | es-mx | es_MX |
Spanish (Peru) | es-pe | es_PE |
Spanish (Puerto Rico) | es-pr | es_PR |
Spanish (Spain) | es | es_ES |
Spanish (Venezuela) | es-ve | es_VE |
Sundanese | su | su_ID |
Swahili | sw | sw |
Swedish | sv | sv_SE |
Swiss German | gsw | gsw |
Tagalog | tl | tl |
Tajik | tg | tg |
Tamazight (Central Atlas) | tzm | tzm |
Tamil | ta | ta_IN |
Tamil (Sri Lanka) | ta-lk | ta_LK |
Tatar | tt | tt_RU |
Telugu | te | te |
Thai | th | th |
Tibetan | bo | bo |
Tigrinya | tir | tir |
Turkish | tr | tr_TR |
Turkmen | tuk | tuk |
Uighur | ug | ug_CN |
Ukrainian | uk | uk |
Urdu | ur | ur |
Uzbek | uz | uz_UZ |
Vietnamese | vi | vi |
Walloon | wa | wa |
Welsh | cy | cy |
Yoruba | yor | yor |