WorkMore Site Translator
WorkMore Site Translator

WorkMore Site Translator

0/5 (0 ratings) — active installs Updated Sep 25, 2026
The Pages list with the Languages column: each page's language, its translations and "+" to create one.

The Pages list with the Languages column: each page's language, its translations and "+" to create one.

WorkMore Site Translator makes a WordPress site multilingual the way WordPress works best: every translation is a real post or page. Your existing content stays exactly as it is and is served at the root of your site; every other language — as many as you need — lives under its own prefix (for example /th/ or /ja/), and translations are written in whatever editor you already use — the block editor, Elementor, Flatsome’s UX Builder or any other — because a translation is simply another post.

Translate by copying

  • Posts and pages, and any custom post type you tick in the settings (portfolios, Elementor templates, Flatsome UX Blocks…), show a Languages column in their lists. One click creates a draft copy in another language — content, excerpt, featured image, template, parent, builder data and custom fields included — and opens it for translation.
  • Categories, tags and custom taxonomies are translated the same way, and a copied post is filed under the translated terms automatically (created on the fly when missing).
  • Translations are linked, so the switcher, the hreflang tags and the admin bar always know where the other languages live.

Clean URLs, correct SEO

  • Sub-directory URLs (example.com/, example.com/th/, example.com/ja/…) that search engines index separately, one URL per post; a post opened under the wrong prefix is redirected to its own.
  • hreflang alternates and x-default on every translated page, self-referencing canonical URLs, per-language sitemaps advertised in robots.txt — with WordPress’ built-in sitemap, Yoast SEO and Rank Math.
  • Visitors on /th/ only see Thai content: archives, search, feeds, category lists, page lists, previous/next links and sticky posts are all scoped to the language. The front page and the posts page map to their translations.

Menus, switcher, site title

  • Every menu location of your theme gets a twin per language under Appearance Menus Manage Locations. Assign a menu built in that language and the theme shows it on translated pages — no theme changes.
  • A language switcher in four styles — inline links, list, pills or dropdown, with an optional accent color and a live preview in the settings — as a menu item, a widget, the [wmst_switcher] shortcode or the wmst_language_switcher() template tag. It links to the translation of the current content and loads no JavaScript.
  • The site title and tagline can be set per language.

Language packs do the interface

On translated pages WordPress loads the language’s own packs, so core, your theme and your plugins show their interface text (buttons, dates, form labels) in that language automatically. A one-click installer for the pack lives in the settings.

Light

  • Language is a normal, indexed term relationship; lists are filtered by one clause. No output buffering, no HTML parsing, no cookies.
  • No JavaScript and no stylesheet files on the frontend. Pages that show a language switcher get its CSS (1–3 KB) inline, through WordPress’ own style API.

Source code

The plugin’s JavaScript ships minified for performance; the human-readable source is included in the plugin’s src/ directory together with the build configuration (vite.config.js).

Pro add-on

Everything above is free and complete, whatever the number of languages or content types. A separate Pro plugin, sold on workmore.connextsystem.com, adds a WooCommerce integration: products, variations, categories and attributes, synced price and stock, shop, cart, checkout and account pages per language, cart and order language, customer emails in the customer’s language. Inside this plugin the add-on is only mentioned on the “Upgrade to Pro” settings tab; nothing here is locked or limited.