LATW Multilingual
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.
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.
