Polylang

Description

Features

Polylang allows you to create a bilingual or multilingual WordPress site. You write posts, pages and create categories and post tags as usual, and then define the language for each of them. The translation of a post, whether it is in the default language or not, is optional.

  • You can use as many languages as you want. RTL language scripts are supported. WordPress languages packs are automatically downloaded and updated.
  • You can translate posts, pages, media, categories, post tags, menus, widgets…
  • Custom post types, custom taxonomies, sticky posts and post formats, RSS feeds and all default WordPress widgets are supported.
  • The language is either set by the content or by the language code in url, or you can use one different subdomain or domain per language
  • Categories, post tags as well as some other metas are automatically copied when adding a new post or page translation
  • A customizable language switcher is provided as a widget or in the nav menu

The author does not provide support on the wordpress.org forum. Support and extra features are available to Polylang Pro users.

If you wish to migrate from WPML, you can use the plugin WPML to Polylang

If you wish to use a professional or automatic translation service, you can install Lingotek Translation, as an addon of Polylang. Lingotek offers a complete translation management system which provides services such as translation memory or semi-automated translation processes (e.g. machine translation > human translation > legal review).

Credits

Thanks a lot to all translators who help translating Polylang.
Thanks a lot to Alex Lopez for the design of the logo.
Most of the flags included with Polylang are coming from famfamfam and are public domain.
Wherever third party code has been used, credit has been given in the code’s comments.

Do you like Polylang?

Don’t hesitate to give your feedback.

Screenshots

  • The Polylang languages admin panel
  • The Strings translations admin panel
  • Multilingual media library
  • The Edit Post screen with the Languages metabox

Installation

  1. Make sure you are using WordPress 5.1 or later and that your server is running PHP 5.6 or later (same requirement as WordPress itself)
  2. If you tried other multilingual plugins, deactivate them before activating Polylang, otherwise, you may get unexpected results!
  3. Install and activate the plugin as usual from the ‘Plugins’ menu in WordPress.
  4. Go to the languages settings page and create the languages you need
  5. Add the ‘language switcher’ widget to let your visitors switch the language.
  6. Take care that your theme must come with the corresponding .mo files (Polylang automatically downloads them when they are available for themes and plugins in this repository). If your theme is not internationalized yet, please refer to the Theme Handbook or ask the theme author to internationalize it.

FAQ

Where to find help ?

Is Polylang compatible with WooCommerce?

  • You need a separate addon to make Polylang and WooCommerce work together. A Premium addon is available.

Do you need translation services?

  • If you want to use professional or automatic translation services, install and activate the Lingotek Translation plugin.

Reviews

May 7, 2021
This is the best plugin for my multilingual sites. I am only using small sites though, and with no complicated plugins like WooCommerce, so the free version is the perfect solution for me.
May 6, 2021
I reported a new issue on the support forum here on WP org 2 weeks ago.The plugin crashes my comment plugin. As determined by the support team on wp.com. I see, they don't reply to others either. One would think, they would be interested in malfunctions of the plugin. Other plugins reply, and are interested in what's going on. I wish I never installed this plugin, but now I am nervous to switch. I use it to have a bilingual site where I write all content myself. Find another language switcher.
May 5, 2021
Keeps spamming this annoying message in the Dashboard "We have noticed that you have been using Polylang for some time. We hope you love it, and we would really appreciate it if you would give us a 5 stars rating."
Read all 1,944 reviews

Contributors & Developers

“Polylang” is open source software. The following people have contributed to this plugin.

Contributors

“Polylang” has been translated into 44 locales. Thank you to the translators for their contributions.

Translate “Polylang” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

3.0.4 (2021-04-27)

  • Improve performance in the pages (or hierarchical post types) list table
  • Fix an ajax conflict with WooCommerce License manager

3.0.3 (2021-03-23)

  • Fix a warning when a language is corrupted in database (term_language missing)
  • Fix confirmation modal with WooCommerce and WordPress < 5.6
  • Fix an ajax conflict with WooCommerce Tree Table Rate Shipping and HubSpot All-In-One Marketing

3.0.2 (2021-03-16)

  • Move hreflang attributes higher in the head section #771
  • Fix custom flags not working (introduced in 3.0)
  • Fix translation of the confirmation modal when changing the language of a post
  • Fix js and css not loaded when Polylang is used as a mu-plugin ((introduced in 3.0))
  • Fix support for html5 stylesheet link tags #775
  • Fix possible warning in frontend-filters-links.php
  • Yoast SEO Premium: Take over the multilingual compatibility removed in Yoast SEO Premium 15.8 #796
  • Yoast SEO: Fix CPT breadcrumb title when the option is left empty #794
  • Yoast SEO: Fix sitemap.xml not redirected on secondary domains #789

3.0.1 (2021-03-10)

  • Fix media gallery messed when editing a post in the classic editor
  • Fix missing script dependency on old WP versions
  • Fix CSS conflict with WooCommerce Bookings for WP < 5.6
  • Fix conflict resulting in ‘__’ already defined in block-editor.js. #779
  • Fix search form removed for some themes. Props Marián Kadaňka. #780
  • Fix fatal error with very old versions of Yoast SEO. Props Nicola Peluchetti. #781

3.0 (2021-03-08)

  • Add compatibility with WordPress 5.7
  • Remove upgrades from Polylang older than 1.8
  • Remove deprecated class PLL_Pointer
  • Pro: Hide the license keys
  • Pro: Fix redirect to the home page of a deactivated language
  • Pro: Fix synchronization of post status not working
  • Pro: Fix language switcher block not working in a post retrieved in REST API
  • Pro: Fix PO export of strings with line breaks
  • Pro: Fix file block title customization lost
  • Add a dialog box to ask a confirmation about a language change in classic and block editors
  • Improve browser language detection #591
  • Improve robustness and documentation of code
  • Fix media library after the language has been chnaged in the editor metabox
  • Fix duplicated title attribute on flag link in posts list
  • Fix legacy block editor language metabox compatibility with WordPress 5.6
  • Fix uploaded theme and plugin files in media library
  • Fix site title not translated in email change confirmation email
  • Fix remaining deprecated jQuery notices #741
  • Fix compatibility with GN publisher
  • Fix compatibility with Woodmart theme search form
  • Fix compatibility issue with 3rd party ajax requests since jQuery 3.3 #744
  • Fix CSS conflict with WooCommerce Bookings
  • Fix browser error when displaying an embed and using a cache plugin #757
  • Fix post type archive title and metadesc not translated in Yoast SEO
  • Fix PHP notice in REST API

See changelog.txt for older changelog