It is possible to build great multi-lingual sites with WordPress. The WP core is not multi-lingual but there are several plugins available including WPML, xili-language, Polylang, qTranslate, Transposh and Global Translator.
In this tutorial, we’re going to explain how those plugins work and help you decide which one is right for your needs.
The multilingual plugins fall into at least five distinct types:
- Plugins that create a new post for each translation of a post. These plugins then link the separate posts together and provide an indicator that one is a translated copy of the other. Examples are WPML, xili-language and Polylang.
- Plugins that store all the translations of a post in the original post. An example is qTranslate X.
- Plugins that automatically generate a translated copy of all your pages using an external service. Such as LocoTranslate or Weglot Translate.
- Plugins that link together separate WordPress installations for each language. An example is Multisite Language Switcher.
Every approach has its advantages and disadvantages. If you would like to explore the pros and cons of each, please visit the “How to choose the right multilingual solution” at WP codex and read more about your choices.
The purpose of this tutorial is to pick one of these methods and show you how it works. This will not be an exhaustive manual for implementing multi-language sites, but you will be able to manage more than one language with the techniques demonstrated.
In this tutorial, we’ll show you how to:
- Translate the core of WordPress.
- Change the administrator’s language.
- Manage multi-lingual posts.
- Allow your users to switch languages by using a widget.
How We Will Work
There are two types of files that deal with a language. Site-wide labels and messages are handled in files with the extensions .mo and .po.
These files are part of the WordPress core or are added by plugins and themes to handle extra text. Many contributors have created files you can use for this, and there are language localization teams you can consult.
If you want to add a language other than English to your site, you can do one of the three things:
- Install a complete copy of WordPress written especially for your desired language.
- Manually install language files on an English installation. You can download available translations from this page. To manually install a language file after you’ve downloaded it, place the language files in /wp-content/languages/.
- Use a plugin.
We’re going to use option #3. We’re going to use the qTranslate-X plugin for translating the content on the front of your site.
For the purpose of this tutorial, you will initially install your WordPress in the default English-US language. Then you will add, one by one, the German and the French languages.
Step #1: Install QTranslate X Plugin