We usually refer here to translating content, not translating themes or plugins. See “String translation” for translating themes/plugins.
Leading multilingual and translation plugins for WordPress are qTranslate and WPML.
- WPML is compatible with plugins like W3 Total Cache and WooCommerce.
I’ve created a separate note exclusively on Polylang
The latest incarnation of an oldest plugin available is qtranslate/qtranslate-xt qTranslate works on concept of multilingual field as opposed of concept of separate page or even domain (Polylang, WPML). I really don’t like that concept.
qTranslate-XT is actively developed (in 2019) but doesn’t work with Gutenberg and has problems with Yoast. So, forget about it.
- I can also consider to create a separate website for each language you want to offer your visitors which are tied together in a multisite installation. And for that, use plugin Multilingual Press.
Bogo, most efficient for smaller sites
Bogo is my favorite for “regular” sites. It is a plugin from the maker of Contact Form 7. I think it’s perfect, very well coded, still alive, works simple but seems slowly developed; that seems to picked-up recently.
With small plugin like Bogo translate ACF it should be working nicely with ACF
WPGlobus is interesting in a way that it stores a language content inside a page, same as qTranslate, and not as a separate set of pages, like most of the plugins like WPML or Polylang. Still exists but charges for Woocommerce integration
State of 2019
There are now really only two plugins to consider when creating a multilingual WordPress website, and those are WPML and Polylang. Concidering how shitty WPML is, the only one left is Polylang.
The new kid on the block is TranslatePress. It has interesting translation mode on frontend, native Gutenberg support and out of the box WooCommerce compatibility. It has different architectural design as it is intercepting frontend output and therefore should be able to translate anything. That design is exactly what I dislike. I do like Google Translate API Integration.
- Weglot is trying to earn as much as they can.
Translation plugin considerations
No WooCommerce? ACF is important
- Polylang is favorite here also
- Bogo is simplest and best for translating content, menus and simple language switcher, but lack some other almost-basic options
If you use WooCommerce
Polylang: only viable solution is to choose Polylang together with it’s two paid extensions Polylang Pro and Polylang for WooCommerce. It had free helpful extension that is now abandoned. Also, this free extension wasn’t complete as it, for example, doesn’t work with variable products. Customer probably must pay for WooCommerce integration.
Bogo is my favorite plugin but it’s biggest problem is total lack of WooCommerce integration.
Because of it’s design, TranslatePress will easily translate WooCommerce content same as any other content. I still don’t like it’s architecture.
By string translation aka translating plugins and themes, mostly using PO & MO files. You can do that without any plugin
Portable Object (PO) and Machine Object (MO)
Editing PO files and generating MO files can be done in multiple ways:s
Loco Translate is the best plugin to translate WordPress themes and plugins directly in your WordPress dashboard.
My WP Translate should enable editing of PO files, but I was unable to make him scan for strings in code. Not sure if works properly.
Content from year 2017
Internationalization should be common practice, not a feature - WPCandy Internationalizing And Localizing Your WordPress Theme Everything You Need to Know About Translating WordPress Plugins - WPMU DEV
Unmaintained: WordPress Plugin: Codestyling Localization (en)
How to Translate a WordPress Theme | AppThemes - http://www.appthemes.com/blog/how-to-translate-a-wordpress-theme/ WordPress › WP Native Dashboard « WordPress Plugins - https://wordpress.org/plugins/wp-native-dashboard/ WordPress › Backend Localization « WordPress Plugins - https://wordpress.org/plugins/kau-boys-backend-localization/ WordPress › English WordPress Admin « WordPress Plugins - https://wordpress.org/plugins/english-wp-admin/changelog/ WordPress › Admin in English « WordPress Plugins - https://wordpress.org/plugins/admin-in-english/ Useful Snippets - A blog about DevOps, PHP, WordPress and more! - http://snippets.khromov.se/
l10n is an abbreviation for localization. l10n is derived from the 10 letters between the “l” and the “n” of localization.
- Locale Auto Switch will automatically switch the locale according to the locale of the browser.