Making your WordPress site multilingual

Offering your websites’ content in multiple languages is a great way to increase the reach of your content. If your blog is for example in a non-english language, translating it to english gives a good change to increase traffic. However, when your blog is already in english a translation in spanish or mandarin chinese might be useful to reach more people. Most importantly though are correct translations which means you just cannot use Google Translate for this task. Also, there are some SEO tweaks you need to consider as Google writes in its guidelines.

From why to how

So now we know why we want to translate our site in another language. But how do we proceed from here? Well, for WordPress there are multiple plugins available that will do the job. In a recent review (October 2014), 4 plugins were described. A more complete overview was written last year by Irena Domingo.

The WordPress Multilingual Plugin (WPML)

After reading about the different possibilities we have chosen for the WordPress Multilingual plugin from WPML. Although this is a premium plugin, it is well worth the costs. Today we describe the costs for the plugin, how it is installed (as this works a little different than usual) and the configuration of the plugin. The support for this plugin is really great and before reaching out to them you definitely should check out the forum as it contains many great answers. We’ll end this post with translating posts and pages and synchronising the menu.

WPML: princing and options

WPML offers three versions. The cheapest one costs $29 but is not complete. For a simple blog you can get away with this, but a more customised WordPress site can not be completely translated. So a better option is the Multilingual CMS option for $79 but this one should be updated annually for $39 to continue getting updates and support.

WPML-welke-versie-zal-ik-kopenWe have chosen the Multilingual CMS lifetime package. Paying once and getting everything just sounds to good to be true. And since we expect to offer multilingual WordPress sites to our clients in the future this one will definitely pay off.

Installing the WPML plugin

After buying the plugin online which included a step to register, you are able to login and download the main plugin.
hoofdplugin-van-WPMLInstalling this plugin works as usual (new plugin > upload) and after activating the plugin you can couple it to your WPML account by clicking the register WPML button in the upper right corner. Just follow the instructions on the screen and you will get a site key. Put this key in the correct field, click OK and you are done!

koppelen-plugin-met-WPML-account

Then it is time for the less obvious part. There are a bunch of add-ons for the plugin that you may want to download now. Click the checkbox of the ones you want to install and they are installed for you. I recommend just installing them all since any one of these might come in handy later on.

Configuration of the plugin

WPML-logo-in-wpadminNow it is time to configure the plugin. By clicking the WPML button in the WordPress backend menu you can:

– add a language.

– setup the URLs of your pages. For this blog with dutch as the standard language and english as the second language we have a base URL of blog.plint-sites.nl/en for the english part.

– setup the language switch. This is a simple dropdown menu you can include on several positions within your theme (assuming your theme understands the WPML plugin) and you can choose how the language switch should look. We have chosen to just show the flags of the languages.

– Then you can configure the way your posts are handled. It is possible to only translate some posts and you need to configure what happens with posts that are not available in all languages.

– In the next section you can disable the translated version to show up in the front-end. This can be very handy if you have a lot of content to be translated. Behind the scenes you can simply translate everything and when you are done, you can quickly make this available in the front-end.

– The following option I haven’t yet looked into.

– Then you may decide to show visitors the content in the correct language based on their current browsing language. There is some discussion about this point with respect to SEO, but we thought it is a nice feature and turned it on. It works with a little Javascript that checks the user agent.

– The remaining SEO features are left for a next post, we currently have them checked.

The translation begins: posts and pages

The translation of posts and pages itself is pretty straightforward. On the overview page of your posts or pages you see a blue plus sign after each post that needs a translation. Once you have a translation, the blue plus sign changes in a pencil to edit it. Clicking the icon opens the post editor and you can start translating. By default it opens with an empty post but you can use a button in the right sidebar to put the content of the original post in there.

Synchronising the menu

After translation of your posts and pages, it is also necessary to translate your menu. This can simply be achieved by opening the menu page or via the WPML submenu. You end up in a menu manager where you are asked to type in the names of the menu items. This is relatively simple, but if not, just try out the WPML forum, it is really great for this type of thing.

Next time

So far we described the installation and configuration part of the WPML plugin for a multilingual WordPress site. Go ahead and follow these steps, then translate your content. Probably you’ll see some buttons or links that remain untranslated. This can be fixed using the WPML add-on string translation which we’ll cover in a next post.


Mijn Twitter profiel Mijn Facebook profiel
Pim Hooghiemstra Webdeveloper and founder of PLint-sites. Loves to build complex webapplications using Vue and Laravel! Latest post
Laravel-mix and the spread operator

Leave a Reply

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