xpay✦ Commerce
Directory
WooCommerce plugins
LATW Multilingual
LATW Multilingual
Lightweight multilingual WordPress with an overlay architecture: language switcher, clean language URLs, hreflang SEO, unlimited languages.
5.0
(1 ratings)Will this break my store?
What the WordPress.org registry says about keeping LATW Multilingual running.
Tested to 7.1
Tested against the WordPress branch in use today.7 days ago
8.0
Your host must be running at least this version.6.0
1
A single maintainer. Worth knowing if the plugin is load-bearing for your store.Maintenance & trust
Scored on how LATW Multilingual is looked after — not on how many stores run it.
Maintenance
35 / 35WordPress compatibility
20 / 20Support responsiveness
Not enough dataMerchant satisfaction
10 / 15Listing transparency
10 / 10Ratings
5.0
1 ratingLATW 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.
- 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.
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.
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.
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.
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.
No. LATW Multilingual is a standalone plugin. It is not a replacement or add-on for WPML or Polylang – install it on its own.
Yes. It supports Gutenberg and page builders for content, and works alongside SEO plugins such as Yoast SEO and Rank Math.
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.
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 <key> 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, <xpath> entries are not read – the text they address is HTML inside the page content, which is already translated with the content itself.
Your own file at wp-content/languages/wpml-config.xml is read too and takes priority over the theme’s and plugins’ files. Declarations by third parties are often incomplete, so you can also add single option keys by hand in Settings – Translation.
Meta Box settings pages need no declaration at all: their text fields are detected from the settings pages and field groups you built, and the page shows up on this tab under its option name. Only text, textarea and WYSIWYG fields are offered – a colour or a switch is not text. If a field you need is missing, add it in Settings – Translation as option_name:field_id.
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).
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.
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.
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.
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.
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.
Categories
Plugin details
Tags on WordPress.org
