LATW Multilingual
Lightweight multilingual WordPress with an overlay architecture: language switcher, clean language URLs, hreflang SEO, unlimited languages.
Solid choice
LATW Multilingual is a solid plugin choice in 2026, with a few things worth checking first. It runs on 20+ sites, is rated 5/5 and was last updated 2 weeks ago, and scores 78/100 on our health check.
- Actively developed — last update 2 weeks ago
- Tested with the latest WordPress (7.1)
- Momentum — downloads up 168.6% vs the previous 30 days
- Small user base (20+ active installs)
- Very few reviews so far
How does it stack up?
Side-by-side on installs, updates, ratings & supportDaily downloads
Download spikes usually follow a new release — each site that auto-updates counts as a download.
Rankings
Where LATW Multilingual stands todayWordPress.org search rankings
Live position in the plugin search, top 100| Keyword | Position |
|---|---|
| language switcher | #61 |
| multilingual | #26 |
| seo | >100 |
| translation | >100 |
| woocommerce | >100 |
Version adoption
Share of active sites per release.
Rating breakdown
★★★★★★★★★★ 5 from 2 reviews
About LATW Multilingual
From the official readme · v2.6.1Description
LATW Multilingual makes a WordPress site available in more than one language. It provides a language switcher, clean language URLs (/en/, /de/), multilingual SEO tags, and manual translation of your content, media and interface strings. You can add as many languages as you need, and no API key or license key is required.
How it works
Most multilingual plugins duplicate every post for every language, LATW stores a translation as an overlay rather than as a separate post: the original post is kept as it is, and the translated values are swapped in when a visitor opens the language URL. One post therefore stays one post in the database, whatever the number of languages.
What you get
- No limits – the multilingual engine and manual translation, with no language limit and no API key.
- One plugin – switcher, routing, SEO, sitemap and translation are all included.
- SEO tags –
hreflang,x-default, self-canonical,<html lang>and sitemap annotations. - Works with Gutenberg, page builders, WooCommerce, Yoast SEO and Rank Math.
- Standalone – it is not a WPML/Polylang add-on; install it on its own.
Features
- Language switcher – Gutenberg block, widget,
[latwm]shortcode, andlatwm_switcher()PHP function. - Switcher styles – dropdown, inline or select; flags optional.
- Language in the URL – native WordPress routing with clean prefixes (
/en/,/de/); your default language keeps its clean URLs with no prefix. - Unlimited languages – add as many as you like (URL prefix + WordPress locale + label + flag).
- Full multilingual SEO –
hreflang+x-default, canonical URLs,<html lang>, and multilingual sitemap annotations. - Manual content translation – translate posts and pages right inside the native Gutenberg editor. The original is never touched; the translation lives as an overlay under the language prefix.
- Page-builder translation – translate builder-made pages through a dedicated shadow editor.
- Theme & plugin translation – a built-in editor for interface strings (
.po/.mo), with “Sync from template” to pull in new strings after an update. - Block interfaces translated too – editing an interface string also updates the JavaScript translation files, so block-based screens such as the cart and checkout follow your edit instead of staying in the original language.
- Theme option strings – text saved in theme and plugin options (button labels, badges, copyright lines) that no language pack can reach, because the value lives in your database rather than in the code.
- Block text in block settings – labels of server-rendered blocks live in the block settings, not in the page markup, so translating the content never reaches them; they get their own list.
- Media translation – title, alt text, caption and description per language.
- Localized internal links – links inside your content point to the correct language on the front-end automatically.
- Translation inspector – switch it on from the admin bar, click any text on the front-end, and the plugin tells you which layer it comes from and links straight to the screen that translates it.
- Language pack download – fetch ready-made
.po/.mopacks from WordPress.org for your themes and plugins, per bundle or for the whole site at once (useful for WooCommerce and Elementor, which ship no template file of their own). - WooCommerce – products, variations, product categories and tags, product attribute labels together with their terms, and the block-based cart and checkout.
- Elementor – pages, templates and Theme Builder layouts translate through the shadow editor, with Elementor’s rendered-element cache.
- Divi – pages, Theme Builder headers and footers and Divi Library global modules translate in the Divi Visual Builder, and each language keeps its own module styles.
- Works with plugins built for WPML – if a plugin or theme integrates with WPML (registering strings or content through WPML’s own functions), it works automatically with this plugin too – no WPML installation required.
Pro edition
The free edition covers the switcher, routing, SEO and manual translation. A separate Pro edition adds automatic AI translation, which uses your own OpenAI key (usage is billed to you by OpenAI):
- Automatic AI translation of posts, pages and custom content.
- Bulk translation of the whole site, processed in a background queue.
- Auto-translate on publish/update.
- AI translation of theme and plugin strings (
.po). - Glossary and translation memory for consistent terminology.
- Cost estimation before running a batch.
AI and manual translation can be mixed: AI produces a first pass, which you can then edit by hand.
Learn more and get Pro: https://llm-automatic-translation.top/latw-multilingual/
Developer features
latwm_current_lang()– prefix of the current language (''= default).latwm_current_locale()– WordPress locale of the current language.latwm_get_languages()– array of languages (including the default).latwm_get_url( $lang, $url = null )– path URL in the given language.latwm_switcher( $args )– echo/return the switcher markup.
Filters: latwm_languages, latwm_detected_lang, latwm_switcher_args, latwm_url, latwm_flag_url. Action: latwm_language_switched.
Translation layers: latwm_translatable_meta, latwm_translatable_term_meta, latwm_translatable_options (option name => paths inside the stored value), latwm_translatable_block_attrs (block name => attribute names).
Requirements
- WordPress 6.0+, PHP 8.0+.
- Pretty permalinks (any structure other than “Plain”).
- Single-site.
Installation
- Upload the plugin to
/wp-content/plugins/, or install it from Plugins → Add New. - Activate the plugin through the Plugins screen.
- Go to LATW Multilingual → Settings and add your languages.
- Add the language switcher via the block, the widget, the
[latwm]shortcode, orlatwm_switcher()in your theme. - Make sure Settings → Permalinks uses a pretty structure (anything other than “Plain”).
Start translating from the post editor and from LATW Multilingual → Translations.
Frequently asked questions
Is the free version usable on its own?
Yes. The free edition is fully functional: switcher, /en/ URLs, the SEO tags and manual translation of content, media and theme/plugin strings – with unlimited languages and no API key.
Does it duplicate my posts for each language?
No. Instead of creating a separate post per language, the original post is kept and the translation is stored as an overlay that is swapped in when the language URL is requested.
Will it slow my site down?
No. Because there is one post per URL and no heavy duplication, a site that scores 100 in Google PageSpeed before LATW still scores 100 after – in every language.
Do I need an API key?
Not for the free version – manual translation requires no key. AI translation is a Pro feature and uses your own OpenAI key, so usage is billed directly to you.
Is this a WPML or Polylang add-on?
No. LATW Multilingual is a standalone plugin. It is not a replacement or add-on for WPML or Polylang – install it on its own.
Does it work with page builders and SEO plugins?
Yes. It supports Gutenberg and page builders for content, and works alongside SEO plugins such as Yoast SEO and Rank Math.
My product is translated, but the text around it is still English
Text on a page comes from several places, and each is translated somewhere else: interface strings compiled into the theme or plugin (Translations – Themes & Plugins), category and tag names (the taxonomy tabs), menus and widgets (their own tabs), the content itself (the content tabs), and text stored in theme options (Translations – Theme options). A string that stays English usually just belongs to a layer you have not enabled yet.
Where does the list on the Theme options tab come from?
Many themes and plugins ship a wpml-config.xml file listing which options, custom fields and block attributes hold front-end text. This plugin reads that file – the option paths from its admin-texts section, the custom fields and term fields marked action="translate", and the block attributes declared as under gutenberg-blocks. Fields marked copy or ignore are skipped: in an overlay model an untranslated field already falls back to the original value, so there is nothing to do for them. Inside block declarations, entries are not read – the text they address is HTML inside the page content…
I edited a string but the cart or checkout still shows the old text
Block-based screens render in JavaScript and read their strings from separate translation files rather than from the .mo. Saving a string in the editor now rebuilds those files as well, so the change applies on the next page load. If a particular string still does not follow, it usually belongs to a different layer – a page title is content, and some plugins store their labels in their own settings (see the Theme options tab).
How do I find out where a piece of text is translated?
Turn on Inspect translations in the admin bar and open your site. Clicking any text tells you which layer produced it – a theme or plugin string, a post, a term, a menu item, a widget or a theme option – and links to the screen that translates it. Text that is not translated yet is reported as such. The mode is administrator-only and nothing is added to a normal page load.
Does it work with WooCommerce?
Yes. Product titles, descriptions and excerpts, variations, product categories and tags, attribute labels together with their terms, and the block-based cart and checkout are all covered. Interface strings such as “Add to cart” come from WooCommerce’s own language pack – use Download packs on the Themes & Plugins tab to fetch it, then edit any string you want to change.
Does it work with Elementor?
Yes, including Elementor Pro’s Theme Builder. Builder pages are translated in the shadow editor, and Elementor’s rendered-element cache is kept per language, so a page rendered first in one language is never replayed in another.
Does it work with Divi?
Yes, including the Divi Theme Builder and the Divi Library. Pages are translated in the Divi Visual Builder, and headers, footers and global modules are translated once and shown in that language on every page that uses them. Each language keeps its own module styles, so a translation styled differently never changes the original.
My theme or plugin has no “Sync from template” file
Some large plugins, WooCommerce and Elementor among them, ship no .pot and publish their translations on WordPress.org instead. Use the Download packs button at the top of the Themes & Plugins tab to fetch everything available for your languages in one go, and the strings become editable like any other.
What does Pro add?
Automatic AI translation: one-click bulk translation of the whole site, auto-translate on publish/update, AI translation of theme/plugin strings, a glossary and translation memory, a background queue and cost estimation.
Changelog
2.6.1
- Fix: an SEO title or meta description entered by hand in All in One SEO stayed in the original language on translated pages, even though its translation was saved – including the title and description shown when the page is shared on social media.
2.6.0
- New: Divi headers, footers and Divi Library. Theme Builder headers, footers and body templates and Divi Library items (global modules) can now be translated. Tick them under Content Types and translate them in the Visual Builder.
- Fix: an SEO title or meta description entered by hand in Yoast SEO stayed in the original language on translated pages, including the title and description shown when the page is shared on social media.
2.5.0
- New: Contact Form 7 forms can be translated. Labels, placeholders, options, the submit button and the form’s messages are translated once, on the Strings screen under the new “Contact Form 7” type, and the translated form then appears wherever it is embedded – shortcode, block, or a widget from Elementor, your theme or an add-on. Mail is still sent to you in the form’s original language.
2.4.0
- New: every language now has its own revision history, kept by WordPress itself. Drafts, autosaves, the revisions panel and “restore” work on a translation exactly as they do on any post – including Elementor’s revisions panel and its “This is just a draft” notice – and each language sees only its own history, while the original keeps its own.
- New: an occasional invitation on the plugin’s own screens to leave a wordpress.org review, dismissable for good.
- Fix: editing a translation could leave the ORIGINAL page holding that translation. Every editor autosaves, and because a translation is edited on the source post, the autosave was a revision of the ORIGINAL carrying translated content – so reopening the original, or opening a different language, offered to restore the wrong language’s text and layout over it.
- Fix: autosave was switched off entirely while a translation was open, so unsaved changes were lost when a tab was closed and “Preview” never showed anything that had not been saved yet. It works again, kept separately for each language.
- Fix: “Preview” on a translation opened the ORIGINAL page in the default language – and could show the original’s own unsaved draft – instead of the translation being edited.
- Fix: the block editor offered the ORIGINAL’s browser backup while editing a translation, and the other way round. Its backup slot is keyed by post id alone, and the source and all of its translations share one post.
2.3.1
- Fix: the “View Page” button on the translation edit screen in Elementor takes you to the translated page, not the original one.
2.3.0
- New: translations are edited on the post itself, with no hidden draft in between – two translations of the same post can be open side by side, and every save carries the language it belongs to.
- New: Debug Mode now records what happens on each front-end page – the language detected, the routing rule that matched, whether the page had a translation, and which translated values were used – so a page that comes out wrong can be explained from the log instead of guessed at. Keys and tokens that appear in addresses are never written to it, and the log folder is no longer reachable from a browser.
- Fix: addresses carrying a language prefix (
/de/,/pl/) were never matched by the plugin’s own routing rules. WordPress read the prefix as a folder and stripped it, so a bare/de/answered with the front page and every other prefixed address resolved by coincidence rather than by design. - Fix: saving a translation in Elementor could write it over the original page, leaving every language showing that one translation. The language now stays with the editor through a reload and through the save.
- Fix: Elementor pages shared a single stylesheet and asset list between languages, so a section that exists in only one translation was served without its styling – depending on which language happened to be viewed first after Elementor’s cache was cleared. Each language now gets its own.
- Fix: a refused save could leave a stray, unusable row behind in the translations table.
For developers
Is this your plugin? Show off the numbers.
Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.
Best LATW Multilingual alternatives
All language switcher plugins →FAQ
LATW Multilingual: quick answers
Straight answers, pulled from live WordPress.org data.
Live data from WordPress.org · checked Oct 10, 2026
Is LATW Multilingual free?
Yes. LATW Multilingual is free to download and use from the official WordPress.org plugin directory.
Is LATW Multilingual safe to use in 2026?
LATW Multilingual is a solid plugin choice in 2026, with a few things worth checking first. It runs on 20+ sites, is rated 5/5 and was last updated 2 weeks ago, and scores 78/100 on our health check.
How many websites use LATW Multilingual?
LATW Multilingual is active on 20+ WordPress websites and has been downloaded 1,253 times since it launched in July 2026. It was downloaded 760 times in the last 30 days.
Does LATW Multilingual work with WordPress 7.1?
Yes. The developer has tested LATW Multilingual up to WordPress 7.1.3, the latest release. It requires WordPress 6.0 or newer.
What PHP version does LATW Multilingual need?
LATW Multilingual requires PHP 8.0 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.
When was LATW Multilingual last updated?
The latest version, 2.6.1, was released on September 26, 2026 (2 weeks ago).
Who makes LATW Multilingual?
LATW Multilingual is developed and maintained by szymon0zawadzki.
What are the best alternatives to LATW Multilingual?
The most popular alternatives to LATW Multilingual are Connect Polylang for Elemen… (100K+ installs), Universally (30K+ installs) and Tranzly™ (7K+ installs).
Powered by PageForge
Want thousands of pages that rank like these? Build them in an afternoon.
This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.
- CSV, Google Sheets & API data sources
- AI content, schema & internal links per page
- Works with Elementor, Gutenberg, Yoast & Rank Math
- Free on WordPress.org — no credit card


