Polylang is a multilingual plugin that lets you create a WordPress site in multiple languages without duplicating your content structure. It adds languages, creates translations of posts, pages, categories, tags, and custom post types, and displays a language switcher to visitors. The free version covers translation management with URL-based language detection (language code in URL, subdomains, or separate domains), automatic copying of categories and metadata when creating translations, and full Yoast SEO and Rank Math compatibility for hreflang tags. The Pro version adds DeepL machine translation directly in the WordPress editor, XLIFF import/export for working with professional translators, translatable URL slugs, and improved block editor integration. For multilingual content management with a per-language post structure, Polylang is the strongest free option and a direct alternative to WPML, with over 28 million downloads. It also works with the WordPress Customizer to translate menus, widgets, and template parts in block themes.
Polylang implements translations using a custom taxonomy of language terms attached to each post. When a translation is created, Polylang stores language-based metadata and uses URL rewriting to serve the correct language version, with language negotiation based on the visitor’s browser preference and URL.
Competitive Features
- Unlimited languages — add any number of languages, with WordPress language packs auto-downloaded
- Content translation — translate posts, pages, media, categories, tags, custom post types, and taxonomies
- Language switcher — customizable switcher as a block, widget, or navigation menu item
- URL options — language code in URL, subdirectory structure, or separate domain per language
- Automated content copying — copy categories, tags, and metadata when creating a new translation
- SEO support — hreflang tags, per-language sitemaps, and Yoast/Rank Math compatibility
- Multisite ready — works across subsites with shared language settings
Key Features
- Block editor integration (Pro) — language switcher sidebar in Gutenberg with quick translation creation
- DeepL machine translation (Pro) — translate content directly in the editor via the DeepL API
- XLIFF import/export (Pro) — exchange translation files with professional translation services
- Translatable slugs (Pro) — translate URL slugs for posts, categories, author bases, and custom post types
- Template part translation (Pro) — translate header/footer template parts in the Site Editor
- WooCommerce add-on — translate products, categories, checkout pages, and emails with product metadata sync
- REST API support — language-aware API endpoints for headless setups (Pro)
Comparison with Competitors
Polylang Pro vs WPML
| Aspect | Polylang Pro | WPML |
|---|---|---|
| Machine translation | DeepL | DeepL + Google |
| XLIFF import/export | Yes | Yes |
| WooCommerce support | Add-on | Built-in |
| Per-language URL slugs | Yes | Yes |
| Setup wizard | Yes | Yes |
Bottom line: WPML has more out-of-the-box integrations and built-in WooCommerce support at a lower starting price. Polylang Pro offers a more generous free version and lighter architecture that many find faster on large sitees.
Polylang Pro vs TranslatePress
| Aspect | Polylang Pro | TranslatePress |
|---|---|---|
| Translation method | Per-post (manual) | Visual editor (front-end) |
| Machine translation | DeepL | Google, DeepL |
| URL structure | Per-language URLs | First/other languages |
| WooCommerce | Add-on | Add-on |
Bottom line: TranslatePress makes translation easier for beginners with its visual front-end editor. Polylang Pro is better for site owners who want full control over per-language content structure and SEO, with more professional workflows like XLIFF.
Recommended Stack: Polylang Pro manages multilingual content. For editing translation files of themes and plugins, pair it with Loco Translate Premium, which works alongside Polylang to keep all interface strings translated.
Official Changelog
Version 3.8.9
Release Date: September 8, 2026
- Fixed wrong redirect on home when the URL includes a query var.
Version 3.8.8
Release Date: September 7, 2026
- Security: Fixed exposure of some draft posts metadata to non-authorized users. Reported by Patchstack.
- Pro: Allow plugins requiring Polylang to be installed when Polylang Pro is active.
- Pro: Fixed warning WP_Post conversion to int with WooCommerce.
- Pro: Fixed creation of translation in block editor for WP < 6.7.
- Fixed duplicated posts page.
Version 3.8.7
Release Date: August 17, 2026
- Pro: Added translation of new blocks introduced by WordPress 7.1.
- Fixed quick edit parent page dropdown for hierarchical custom post types.
- Fixed wp-editor script enqueued together with the new widgets editor.
Frequently Asked Questions
Is Polylang free?
Yes. The core plugin is free and includes unlimited languages, content translation, language switchers, and SEO support. Polylang Pro ($99/year) adds DeepL machine translation, XLIFF import/export, translated URL slugs, and premium support.
How does Polylang handle SEO for multiple languages?
Polylang sets correct hreflang tags on translated pages, generates per-language XML sitemaps, and is compatible with Yoast SEO and Rank Math. Each language version gets its own URL, which prevents duplicate content issues.
Can I use Polylang with WooCommerce?
Yes. The official Polylang for WooCommerce add-on translates products, categories, attributes, checkout pages, cart, and emails. It also syncs product metadata and works with the WooCommerce REST API.
How does the translation workflow work?
You create a post in the default language, then click “add translation” for the target language. Polylang copies categories, tags, and featured images automatically, and you edit the translated content. In Pro, DeepL machine translation can pre-fill the translation, which you then review.
Will Polylang slow down my site?
No. Polylang is built on WordPress taxonomies with no additional database overhead per language. It adds a small translation query per page and supports caching plugins for full page cache of each language version.






Leave a Reply