This document discusses creating multilingual WordPress sites. It defines internationalization and localization and explains how WordPress supports over 160 languages out of the box. However, plugins are needed to support displaying multiple languages on a single site. The document reviews popular multilingual plugins like WPML, qTranslateX, and Babble. It also discusses using a multisite network or translating themes and plugins. In the end, it encourages contributing translations to WordPress and plugins.
2. Chief Technology Officer at
Actionable Books
Happy to be visiting here from Ottawa,
Canada.
Have used WordPress since 2009 as
a blogger, freelance developer, and in
a corporate environment.
I speak in English, French, and
according to my friends & family, I
also speak nerd.
Hi, I’m Shawn!
@shawnhooper - shawnhooper.ca
4. @shawnhooper - shawnhooper.ca
“The method of human
communication, either
spoken or written, consisting
of the use of words in a
structured and conventional
way”
- Oxford Dictionary
Examples:
English, French
Spanish, Italian
Language
5. @shawnhooper - shawnhooper.ca
“In computing, a locale is a
set of parameters that
defines the user's language,
region and any special
variant preferences that the
user wants to see in their
user interface. Usually a
locale identifier consists of at
least a language identifier
and a region identifier.”
- Wikipedia
Locale
7. @shawnhooper - shawnhooper.ca
“Internationalization
(sometimes shortened to
“I18N , meaning "I - eighteen
letters -N") is the process of
planning and implementing
products and services so
that they can easily be
adapted to specific local
languages and culture.…”
- techtarget.com
Internationalization
8. @shawnhooper - shawnhooper.ca
“Localization (also referred
to as "L10n") is the process
of adapting a product or
content to a specific locale
or market.”
- GALA Global
Localization
12. @shawnhooper - shawnhooper.ca
Localization isn’t just about words, think about:
Script Direction
Localization
Left to Right Right to Left
English Arabic
Spanish Persian
French Hebrew
Greek
Yiddish
Latin Western Punjabi
17. @shawnhooper - shawnhooper.ca
WordPress Core is
translated in 162 locales.
52 translations are 100%
complete, up-to-date with
the most current version of
WordPress.
Translations are done by
volunteers on the
“Polyglots” team.
WordPress
19. @shawnhooper - shawnhooper.ca
Although WordPress comes in many
languages, it does not natively
support providing viewers with
content in more than one language.
29. @shawnhooper - shawnhooper.ca
qTranslate X
Free Plugin Available on WordPress.org
https://wpml.org/
Supports:
Posts
Pages
Custom Post Types
Taxonomies
Menus
General Settings
Widgets
38. @shawnhooper - shawnhooper.ca
Doesn’t create any additional database tables
Like WPML, each translation is a separate post
Supports:
Posts
Pages
Custom Post Types
Taxonomies
Menus
Widgets
Babble
41. @shawnhooper - shawnhooper.ca
There are two ways of doing this:
Separate Installs of WordPress for each language (yuck!)
Using WordPress Multisite with a sub-site for each language (yay!)
Multisite Approach
43. @shawnhooper - shawnhooper.ca
There are a few plugins that can assist with switching languages
if you choose to use the multisite approach:
Multisite Language Switcher
Zanto WP Translation (For Multisites)
Language Switching
44. @shawnhooper - shawnhooper.ca
Comparison
Feature WPML qTranslateX Multisite Babble
Cost Paid Free Free Free
Content Storage Separate Posts Single Post Languages in Subsites Separate Posts
Widget Areas
Needs Additional
Plugins
Yes Yes No
Media With Additional Plugin No
Each subsite has it’s
own media library
No
Permalink Translation Yes
With “Qtranslate Slug”
Plugin
Yes Yes
Sync Custom Fields Yes Yes No Yes
Sync Taxonomies Yes Yes No No
Translate Strings in
Themes & Plugins
WPML String
Translation Plugin
Additional Plugins
Required
Additional Plugins
Required
Additional Plugins
Required
Database Impact High Low Low Low
Translation Service
Support
ICanLocalize No No No
46. @shawnhooper - shawnhooper.ca
.POT, .PO and .MO Files
Contain all the strings in your plugins and
themes for a specific language.
.POT = Template ( Original Strings )
.PO = Localized Version of the Strings
.MO = Compiled Version of the Localized Files
47. @shawnhooper - shawnhooper.ca
.POT, .PO and .MO Files
Many popular themes & plugins
come with translations already provided.
If not, you can manage your own translations
through plugins or 3rd party applications.
52. @shawnhooper - shawnhooper.ca
PO Edit
Pro Version ($20) will scan your source code and find missing
translations
Provided Statistics including
Word Count.
60. @shawnhooper - shawnhooper.ca
Polyglots Team
The polyglots team is responsible for ensuring WordPress is
available in dozens of languages and many more regions. It’s
a big job, which is why we need help from native speakers of
many languages to make it possible.
https://make.wordpress.org/polyglots/
Bonjour! Comment ça va aujourd’hui? C’est un plaisir être ici en Sarasota ce matin pour vous parler à propos des sites Multilingue en WordPress.
Just Kidding!
GALA = Globalization and Localization Association (gala-global.org)
Notice that the link in the header to switch to Arabic is printed in Arabic, not in English.
Not only is the text written from right to left, but the entire page is inverted.
The right & lefthand sidebars are inverted.
The breadcrumbs appear in the top right.
The image on the right is an actual bug that was reported in an earlier version of WordPress, where the “Customize Your Site” button overlapped into the next column of the dashboard.
In WordPress 4.5.3 there are 82 locales to choose from during the installation process.
I worked on one website last year that had over 700 queries against the WordPress database just to load the home page. Turning off this option reduced the number of queries to about 250. Still not great, but definitely better!