MTCodes Translator & Language Switcher

Plugin Banner

MTCodes Translator & Language Switcher

by Milkan Trninic

Download
Description

MTCodes Translator is a lightweight multilingual plugin with no dependencies and no theme coupling, built by MTCodes.

  • Unlimited languages — every non-default language is served under its own URL prefix (/bs/, /fr/, /de/, …); the default language stays at the site root.
  • Works with any builder — the fully rendered HTML is parsed and every text node (plus alt, title, placeholder, aria-label and SEO meta) is swapped against the translations table. Strings without a translation stay in the default language and appear in the admin editor automatically.
  • SEO-ready — hreflang alternates with x-default on every page, self-referencing canonicals on translated URLs, per-language <html lang> and og:locale, translated <title> and meta description, and language variants of all pages in the core XML sitemap.
  • Language switcher[mtml_switcher] shortcode, mtml_switcher() template tag, or build your own with mtml_languages(), mtml_lang_url() and mtml_current_lang().
  • Importer — optionally imports a theme dictionary file (inc/i18n.php returning array( 'lang' => array( 'key' => 'text' ) )).
  1. Copy the mtcodes-translator folder into wp-content/plugins/.
  2. Activate the plugin.
  3. Configure languages under Settings MTCodes Translator Languages.
  4. Visit any page under a language prefix, then translate the discovered strings under Settings MTCodes Translator Translations.
  1. Languages settings — add unlimited languages, pick the default, and turn on automatic browser-language redirection for first-time visitors.

    Languages settings — add unlimited languages, pick the default, and turn on automatic browser-language redirection for first-time visitors.

  2. Translations editor — every string discovered on the front end lands here automatically; edit and save per language.

    Translations editor — every string discovered on the front end lands here automatically; edit and save per language.

  3. Front end — a language-prefixed URL (<code>/de/</code>) with the <code>[mtml_switcher]</code> shortcode in the header.

    Front end — a language-prefixed URL (/de/) with the [mtml_switcher] shortcode in the header.

Do I need to duplicate my pages per language?

No. One page serves all languages; the plugin translates the rendered output per URL.

What happens to untranslated strings?

They are shown in the default language and collected in the admin editor, sorted newest first.

1.0.0

  • Initial release: language URL routing, rendered-page translation, string discovery, hreflang/canonical/sitemap SEO, admin editor, theme dictionary importer, switcher shortcode.
Back to top