Translating with the Poedit Software

Last Updated on

Theme translation is the process of translating texts from one language into another. Since Ken does not provide files in languages other than English, many users look for ways to translate their theme into their own language. There are a lot of ways to translate a theme but this article will explain how to translate with the Poedit software.

Contrary to other translation methods using plugins, this method requires the Poedit software, a handy computer software that is used for the translation of language files.

In this article

Changing the Default Language

To set the default language of WordPress:

From the WordPress left menu, go to Settings > General.
Change the Site Language field to your target language.
Click on Save Changes.

Installing the Poedit Software

To install the Poedit software:

Go to the official Poedit website.
The Poedit software is available for different platforms such as Windows, MacOS, Unix / Linux. Click on the Download button that fits with your operating system. The download will start automatically.
Select “I agree with these terms” and click on Next. Run the setup and finish the installation.

Finding and Configuring the Translation File

To find the translation file of your website:

Install a child theme.
Note: If you are not sure how to install a child theme, read the Installing the theme and child theme article.
Go to your-website-index/wp-content/themes/ken and copy and paste the /languages folder into the your-website-index/wp-content/themes/ken-child folder. So your new language file will be your-website-index/wp-content/themes/ken-child/languages

Translating the Theme

To translate the theme:

Open the Poedit software.
Open up the PO file that you copied into your child theme under the languages folder by going to the Files > Open menu. Alternatively, you can use the Control + O shortcut keys for Windows and Command + O for Mac.
Go to Files > Save As to name it according to your target language and click on Save.

For example, in case of you want to create a translation file for Spanish (Argentina), name your file as es-AR . The language file extension (.po) will be added automatically.

Here is the language code list for your translation file:

Code Name
af Afrikaans
af-ZA Afrikaans (South Africa)
ar Arabic
ar-AE Arabic (U.A.E.)
ar-BH Arabic (Bahrain)
ar-DZ Arabic (Algeria)
ar-EG Arabic (Egypt)
ar-IQ Arabic (Iraq)
ar-JO Arabic (Jordan)
ar-KW Arabic (Kuwait)
ar-LB Arabic (Lebanon)
ar-LY Arabic (Libya)
ar-MA Arabic (Morocco)
ar-OM Arabic (Oman)
ar-QA Arabic (Qatar)
ar-SA Arabic (Saudi Arabia)
ar-SY Arabic (Syria)
ar-TN Arabic (Tunisia)
ar-YE Arabic (Yemen)
az Azeri (Latin)
az-AZ Azeri (Latin) (Azerbaijan)
az-AZ Azeri (Cyrillic) (Azerbaijan)
be Belarusian
be-BY Belarusian (Belarus)
bg Bulgarian
bg-BG Bulgarian (Bulgaria)
bs-BA Bosnian (Bosnia and Herzegovina)
ca Catalan
ca-ES Catalan (Spain)
cs Czech
cs-CZ Czech (Czech Republic)
cy Welsh
cy-GB Welsh (United Kingdom)
da Danish
da-DK Danish (Denmark)
de German
de-AT German (Austria)
de-CH German (Switzerland)
de-DE German (Germany)
de-LI German (Liechtenstein)
de-LU German (Luxembourg)
dv Divehi
dv-MV Divehi (Maldives)
el Greek
el-GR Greek (Greece)
en English
en-AU English (Australia)
en-BZ English (Belize)
en-CA English (Canada)
en-CB English (Caribbean)
en-GB English (United Kingdom)
en-IE English (Ireland)
en-JM English (Jamaica)
en-NZ English (New Zealand)
en-PH English (Republic of the Philippines)
en-TT English (Trinidad and Tobago)
en-US English (United States)
en-ZA English (South Africa)
en-ZW English (Zimbabwe)
eo Esperanto
es Spanish
es-AR Spanish (Argentina)
es-BO Spanish (Bolivia)
es-CL Spanish (Chile)
es-CO Spanish (Colombia)
es-CR Spanish (Costa Rica)
es-DO Spanish (Dominican Republic)
es-EC Spanish (Ecuador)
es-ES Spanish (Castilian)
es-ES Spanish (Spain)
es-GT Spanish (Guatemala)
es-HN Spanish (Honduras)
es-MX Spanish (Mexico)
es-NI Spanish (Nicaragua)
es-PA Spanish (Panama)
es-PE Spanish (Peru)
es-PR Spanish (Puerto Rico)
es-PY Spanish (Paraguay)
es-SV Spanish (El Salvador)
es-UY Spanish (Uruguay)
es-VE Spanish (Venezuela)
et Estonian
et-EE Estonian (Estonia)
eu Basque
eu-ES Basque (Spain)
fa Farsi
fa-IR Farsi (Iran)
fi Finnish
fi-FI Finnish (Finland)
fo Faroese
fo-FO Faroese (Faroe Islands)
fr French
fr-BE French (Belgium)
fr-CA French (Canada)
fr-CH French (Switzerland)
fr-FR French (France)
fr-LU French (Luxembourg)
fr-MC French (Principality of Monaco)
gl Galician
gl-ES Galician (Spain)
gu Gujarati
gu-IN Gujarati (India)
he Hebrew
he-IL Hebrew (Israel)
hi Hindi
hi-IN Hindi (India)
hr Croatian
hr-BA Croatian (Bosnia and Herzegovina)
hr-HR Croatian (Croatia)
hu Hungarian
hu-HU Hungarian (Hungary)
hy Armenian
hy-AM Armenian (Armenia)
id Indonesian
id-ID Indonesian (Indonesia)
is Icelandic
is-IS Icelandic (Iceland)
it Italian
it-CH Italian (Switzerland)
it-IT Italian (Italy)
ja Japanese
ja-JP Japanese (Japan)
ka Georgian
ka-GE Georgian (Georgia)
kk Kazakh
kk-KZ Kazakh (Kazakhstan)
kn Kannada
kn-IN Kannada (India)
ko Korean
ko-KR Korean (Korea)
kok Konkani
kok-IN Konkani (India)
ky Kyrgyz
ky-KG Kyrgyz (Kyrgyzstan)
lt Lithuanian
lt-LT Lithuanian (Lithuania)
lv Latvian
lv-LV Latvian (Latvia)
mi Maori
mi-NZ Maori (New Zealand)
mk FYRO Macedonian
mk-MK FYRO Macedonian (Former Yugoslav Republic of Macedonia)
mn Mongolian
mn-MN Mongolian (Mongolia)
mr Marathi
mr-IN Marathi (India)
ms Malay
ms-BN Malay (Brunei Darussalam)
ms-MY Malay (Malaysia)
mt Maltese
mt-MT Maltese (Malta)
nb Norwegian (Bokmå)
nb-NO Norwegian (Bokmå) (Norway)
nl Dutch
nl-BE Dutch (Belgium)
nl-NL Dutch (Netherlands)
nn-NO Norwegian (Nynorsk) (Norway)
ns Northern Sotho
ns-ZA Northern Sotho (South Africa)
pa Punjabi
pa-IN Punjabi (India)
pl Polish
pl-PL Polish (Poland)
ps Pashto
ps-AR Pashto (Afghanistan)
pt Portuguese
pt-BR Portuguese (Brazil)
pt-PT Portuguese (Portugal)
qu Quechua
qu-BO Quechua (Bolivia)
qu-EC Quechua (Ecuador)
qu-PE Quechua (Peru)
ro Romanian
ro-RO Romanian (Romania)
ru Russian
ru-RU Russian (Russia)
sa Sanskrit
sa-IN Sanskrit (India)
se Sami (Northern)
se-FI Sami (Northern) (Finland)
se-FI Sami (Skolt) (Finland)
se-FI Sami (Inari) (Finland)
se-NO Sami (Northern) (Norway)
se-NO Sami (Lule) (Norway)
se-NO Sami (Southern) (Norway)
se-SE Sami (Northern) (Sweden)
se-SE Sami (Lule) (Sweden)
se-SE Sami (Southern) (Sweden)
sk Slovak
sk-SK Slovak (Slovakia)
sl Slovenian
sl-SI Slovenian (Slovenia)
sq Albanian
sq-AL Albanian (Albania)
sr-BA Serbian (Latin) (Bosnia and Herzegovina)
sr-BA Serbian (Cyrillic) (Bosnia and Herzegovina)
sr-SP Serbian (Latin) (Serbia and Montenegro)
sr-SP Serbian (Cyrillic) (Serbia and Montenegro)
sv Swedish
sv-FI Swedish (Finland)
sv-SE Swedish (Sweden)
sw Swahili
sw-KE Swahili (Kenya)
syr Syriac
syr-SY Syriac (Syria)
ta Tamil
ta-IN Tamil (India)
te Telugu
te-IN Telugu (India)
th Thai
th-TH Thai (Thailand)
tl Tagalog
tl-PH Tagalog (Philippines)
tn Tswana
tn-ZA Tswana (South Africa)
tr Turkish
tr-TR Turkish (Turkey)
tt Tatar
tt-RU Tatar (Russia)
ts Tsonga
uk Ukrainian
uk-UA Ukrainian (Ukraine)
ur Urdu
ur-PK Urdu (Islamic Republic of Pakistan)
uz Uzbek (Latin)
uz-UZ Uzbek (Latin) (Uzbekistan)
uz-UZ Uzbek (Cyrillic) (Uzbekistan)
vi Vietnamese
vi-VN Vietnamese (Viet Nam)
xh Xhosa
xh-ZA Xhosa (South Africa)
zh Chinese
zh-CN Chinese (S)
zh-HK Chinese (Hong Kong)
zh-MO Chinese (Macau)
zh-SG Chinese (Singapore)
zh-TW Chinese (T)
zu Zulu
zu-ZA Zulu (South Africa)

Select the line that you want to translate. Alternatively, find the text by going to Edit > Find or use the Control + F shortcut keys for Windows and Command + F for Mac.

Write the translated text below the field.
 Go to Files > Save.

Uploading the Translation Files

To move your translated files into your website language folder:

Access your website index via the (S)FTP software by entering your (S)FTP login credentials. If your website is on a localhost, skip this step.
Go to your-website-index/wp-content/themes/ken-child/languages folder and paste your translated files that have the .PO and .MO extensions. Click Yes to override the existing language files if necessary.
Was this helpful?
Previous Article:
Next Article:

Can't find what you're looking for?

Open New Ticket