How to translate WordPress themes and plugins

WordPress speaks the English language by default. Since it is user-oriented, it has also learned many other languages that you can quickly change from the Settings page. Depending on the language you want to translate the backend (admin pages) of your WordPress site, the chances are that you will just have to select it from the list. There are also many other languages that haven’t been completed yet, but it is possible to install them manually if that’s something you really wish.

But even if you successfully translate WordPress to another language, that still doesn’t mean that your site is fully localized. You can get the original WordPress strings to display something more understandable to you, but what about themes and plugins that aren’t part of the translation?

Translate WordPress themes and plugins

If you want or need to localize the entire backend, it will be necessary to translate WordPress themes and plugins as well. Luckily, many popular themes and plugins will already have the translation files ready. If so, you won’t even have to budge in order to have them in your language. But that is usually true only for a few popular languages like French, Spanish, German, Chinese or Italian to name a few.

But before you give up on the whole idea of localization, let us show you how easy it really is to translate WordPress themes and plugins.

How to know which items are translatable

Unfortunately, not all WordPress themes and plugins are easily translatable. So before you can start working, you will have to check the items’ descriptions and their language files. More often than not, the developers of particular themes and plugins will accentuate that their products are translation ready. You will find the confirmation message in the item description.

Google Maps Widget lang folder

The other option is to check files and folders directly. When you download a plugin or theme, open its folder and search for “language” or “lang” folder. If it exists, you should find all or just some of these file types:

  • .pot – Portable Object Template which contains the original strings
  • .po – Portable Object which holds the actual translation
  • .mo – Machine Object that is typically used to translate the code

If the theme or plugin has the files, you can put a smile on your face because that means it is quite easy to translate. Now set your mind to another language, prepare, and install a free plugin that will be your translation guide.

Loco Translate

PRICE: Free

Loco Translate

Here’s a free plugin that provides a built-in translation editor which works directly from your browser. Unlike other applications like Poedit (which is also a very popular choice among users) that you have to use outside of WordPress, Loco Translate is just another plugin.

Once installed and activated, Loco Translate will settle on the admin dashboard menu. Hover over it, and it will let you select a group that you want to translate. You can select themes, plugins or WordPress Core:

  1. Navigate to Loco Translate -> Plugins or Themes
  2. Select a plugin/theme from the list
  3. Click “New Language” button
  4. Choose a language you are translating the plugin/theme to
  5. Select a different location of the translation files if you want to (we suggest leaving the “author” option selected)
  6. Click on “Start translating” button

Themes and plugins without files

Even if the item you are trying to translate doesn’t come with the needed template files, Loco Translate can help. If you choose the option, the plugin will scan the entire code of an item and try to create the template file. Obviously, such generated file may not be as perfect as the one that developer can build. But it is a nice feature to have in those cases when you just have to translate the untranslatable items.

Start translating

After clicking the button, the plugin will prepare everything and open the translation editor in front of you. The editor contains four parts:

  • Source text
  • Source text in English
  • Translation in the language you selected
  • Comments

Translating a WordPress plugin

The first part has all strings that are available for translation. For testing purposes, we selected the free Google Maps Widget plugin. The plugin contained 250 strings available for editing. They were all nicely displayed in a list which allows you to choose rows one by one. By picking a line, Loco Translate will automatically populate the English translation and show comments if there are any. Now it is your time to shine – keep selecting string by string and start modifying text.

As soon as you begin to type, the plugin will mark the selected string with a yellow star. Once you get to finish hundreds of lines, this will help you identify those that you’ve already worked on. Also, the source text will get the new translation loaded right next to the original string so you can quickly see the changes.

Managing translations

On top of the editor, you will find several buttons and labels that help you manage the translation. The first label will let you know what is the language that you’re currently editing and the time of the last update. The most interesting part is the percentage and number of strings left for translation.

Loco Translate buttons

Just below that, you can find a few buttons. Save changes, synchronize translations if they’re out of sync, and revert changes when necessary. If you are not sure that the translation is good enough, you can mark a string as “Fuzzy“. This will let you identify lines that still need some work. Also, you can exclude fuzzy lines from loading in the translation files and leave them to be translated in the future or by someone else.

Loco Translate also makes it easy to search for specific strings. If you want to modify just a few particular ones or you remembered a line you forgot to mark earlier, use the search function to find it quickly.

On the very right side of the screen, you can find download icons. Just in case you cannot save changes due to permission problems, you can download PO, MO or POT files (depending on files you’re working with).

How to activate the translation

Luckily, Loco Translate allows data to be used at any times. That means that you don’t have to complete the translation entirely before you can use it. So even if you have translated just a few strings, it is still possible to load the translation into WordPress. Of course, there’s no much sense in having just a few strings translated, but it is a good thing when you decide to give it a test.

There are no any buttons you should click to activate the translation nor anything similar. Once the files are saved, you just have to switch the language of your WordPress site.

  1. Go to Settings -> General
  2. Find “Site Language” option
  3. Switch language to the one you translated the plugin/theme to
  4. Save changes
  5. Open plugin’s or theme’s settings to see the translation in action

Keep on translating

After spending a few minutes with Loco Translate, having WordPress themes and plugins in different languages will seem as easy as one, two, three. Well, it actually is, but the only difference is that you will have to count to a few hundred or even thousand in some instances to complete all the lines.

Not only that translating can help you and your users, but you can apply the same files on other sites. Usually, all themes and plugins found in the official directory will welcome new translations. So just contact the developer and ask them if they want to include yours as the language option for the product.

If you want to step up the translation game and change the language of posts and pages that you have already published, you should know about other plugins that can help you. Recently, we had a chance to review Weglot and Gtranslate which will automatize the entire process of translating WordPress sites.

START YOUR OWN BLOG

This guide is an introduction to mastering the art of blogging. It provides easy to follow steps to start, maintain, and grow your blog.

Read the guide

Leave a Reply

Your email address will not be published. Required fields are marked *