Multi Language WordPress website
There are few “off the shelf” solutions for turning your WordPress website to a multi language website. Two leading solutions are plugins named: WPML and PolyLang, and there is an additional plugin that is not very popular but still it has very interesting capabilities called Transposh but in this guide we wont get into it.
Ploylang has a free and paid version and WPML (currently for April 2021) has a paid version with extensions. Both plugins are providing a wide variety of features such as built in professional translation services, language switcher, translation migration. Both plugins also enable the clean and simple content creation process, with optional pages translation that is also compatible for Google’s algorithm. My personal favorite is WPML but it could change depending on the website and business needs and organizational structure.
Optimized WPML settings
The optimal translation settings are not the same for all websites, they differ according to variables such as:
- Localization differences
- Currencies used
- Difference between the same content in different languages
- Amount of translated pages
- Legal limitations
- Organizational recourses such as Development and translation budget/manpower.
Options for URL Structure
Subfolders (AKA Sub Directories)
The easiest and simplest way to set the URL structure is with subfolders, when the main language (mostly English) is set for the root directory and does not contain a language prefix /en/, for example:
domain.com – for main language and domain.com/es/ for the Spanish version of the same page. Same goes for all the rest of the pages, domain.com/page1 would have a Spanish version on domain.com/es/page1. it’s also possible to translate the “slug” , in this example to: domain.com/es/página1/
If you need to translate only parts of the website then the subfolder option is advised.
Using a separate Sub domain for each language is a bit more demanding solution because it requires to translate a minimal amount of pages so there will be an “independent” website.
The other difference with this solution is that a subdomain eg sub.domain.com is a separate entity for Google and if one of the subdomains is jeopardized by a security hack, algorithm update or black hat SEO then the rest of the subdomains including the root domains wont get effected. For example this website (seokru.com) has an English version on the WWW version www.seokru.com and a Hebrew version on he.seokru.com.
Sub Domains are an optimal solution when the difference between the content is just the translation and nothing else
Separate Top Level Domains would be: domain.com ,domain.es etc..
Separate TLD would be the advised solution when the business is difference in each country, this means GEO and LANG difference. For example the essence of the content changes in different languages and using different currencies. This solution also can have a positive effect on rankings but only if used correctly.
Where should we Locate the Language Switcher ?
The location of the language switcher (usually flag language switcher) is mostly a UX decision and not a direct SEO decision. Because for SEO the plugins use the meta ‘hreflang’ tag to determine what is the alternative page in other languages.
For better UX usually you’d want to locate the language switcher on the top menu, where it is highly visible and easy to click, However in cases where only some of the pages are translated you might prefer to locate the language switcher in the footer or displaying it only on pages that have a translated version.
What if you translate only few blog posts
WPML plugin settings has the option to display the language switcher only on pages that have a translated version.
So the translated urls would be: domain.com/es/blog/post-title/
What if I have all the pages translated
When all (or most) website’s pages are translated then it makes more sense to place the language switcher on the top menu where it is easily accessible.