Documentation
WBW Translation is an AI-powered translation plugin for WordPress. It translates complete pages (not individual strings) and stores the result permanently in a dedicated database table. Each translated page is delivered with fully localized SEO metadata — including JSON-LD, hreflang, Open Graph, and canonical tags.
How It Works
- A post is published or manually added to the queue.
- The translation engine (Claude AI or DeepL) translates the entire HTML page.
- Das übersetzte HTML wird in der Tabelle
wbw_translationsgespeichert. - Bei einem Seitenaufruf unter
/{lang}/...liefert das Plugin das gespeicherte HTML aus — mit allen SEO-Patches angewendet.
Installation and Setup
- Install the ZIP file via Plugins → Add New → Upload Plugin.
- Activate the plugin.
- Under WBW Translation → Settings, enter your API key (Claude or DeepL).
- Select target languages.
- Translate your first test post.
Requirements
- WordPress 6.0 or higher
- PHP 7.4 or higher (recommended: PHP 8.1+)
- MySQL 5.7+ / MariaDB 10.3+
- API key: Anthropic (Claude) or DeepL
Settings
General Settings
| Option | Description | Default |
|---|---|---|
| Translation Engine | Claude AI or DeepL | Claude AI |
| API Key | Key for the selected engine | — |
| Source Language | Language of the original content | de |
| Target Languages | Kommagetrennte Liste (z. B. en,fr,es) | — |
| Auto-Translate | Automatically translates upon publication | On |
| Cache Duration | Seconds before re-translation | 86400 |
SEO Settings
| Option | Description |
|---|---|
| Enable hreflang | Inserts hreflang tags in the <head> |
| Translate Canonical | Sets a language-specific canonical tag |
| Translate OG Tags | Translates og:title and og:description |
| Translate JSON-LD | Translates structured data (Schema.org) |
| Sitemap Integration | Adds translated URLs to the Yoast/RankMath sitemap |
Language Switcher
Integration via Shortcode
[wbw_language_switcher]
Integration via PHP
<?php echo do_shortcode('[wbw_language_switcher]'); ?>
Parameters
| Parameter | Values | Default | Description |
|---|---|---|---|
style | dropdown, list, flags | dropdown | Display Style |
show_flags | true, false | true | Show flags |
show_names | true, false | true | Show language names |
current_lang | true, false | true | Show current language |
Shortcodes
[wbw_translate]
Translates a single text block inline.
[wbw_translate lang="en"]Dieser Text wird auf Englisch angezeigt.[/wbw_translate]
[wbw_if_lang]
Displays content only for a specific language.
[wbw_if_lang lang="de"]Nur auf Deutsch sichtbar.[/wbw_if_lang]
[wbw_translated_url]
Returns the translated URL of the current page for a specific language.
[wbw_translated_url lang="en"]
SEO Features in Detail
hreflang
Das Plugin setzt automatisch hreflang-Tags für alle aktivierten Sprachen sowie einen x-default-Tag für die Quellsprache.
<link rel="alternate" hreflang="de" href="https://example.com/artikel/" /><link rel="alternate" hreflang="en" href="https://example.com/en/artikel/" /><link rel="alternate" hreflang="x-default" href="https://example.com/artikel/" />
Canonical Tags
A language-specific canonical tag is output for each translated page:
<link rel="canonical" href="https://example.com/en/artikel/" />
Open Graph
og:title und og:description werden automatisch in die Zielsprache übersetzt und ausgegeben.
JSON-LD / Schema.org
Strukturierte Daten (z. B. Article, BreadcrumbList) werden übersetzt und als <script type="application/ld+json">-Block in der Zielsprache ausgegeben.
Sitemap
The plugin integrates with Yoast SEO and RankMath, automatically adding all translated URLs to the XML sitemap.
Glossary
The glossary allows specific terms to be excluded from translation or assigned a fixed translation.
Create an Entry
- Navigate to WBW Translation → Glossary.
- Enter term.
- Enter translations for each target language or leave the field blank to keep the term untranslated.
- Save.
CSV Import
Format: Begriff,en,fr,es (Kopfzeile obligatorisch)
Begriff,en,fr,esWildkatze,Wildcat,Chat sauvage,Gato montésRehbock,Roebuck,Chevreuil,Corzo
Tools & Helper Functions
Clear Cache
Under WBW Translation → Tools → Clear Cache the entire translation cache can be cleared. Alternatively via WP-CLI:
wp wbw cache flush
Re-translate
Individual posts can be re-translated via the post list (column Translations) or via WP-CLI:
wp wbw translate --post_id=42 --lang=en
Batch Translation
Start all unpublished translations at once:
wp wbw translate --all --lang=en
Database Diagnostics
Prüft, ob die Tabelle wbw_translations korrekt angelegt ist und alle Indizes vorhanden sind:
wp wbw db check
REST API
Das Plugin registriert eigene REST-Endpunkte unter /wp-json/wbw/v1/.
| Endpoint | Method | Description |
|---|---|---|
/wp-json/wbw/v1/translate | POST | Translates a post |
/wp-json/wbw/v1/status/{id} | GET | Translation status of a post |
/wp-json/wbw/v1/flush/{id} | DELETE | Clear cache for a post |
/wp-json/wbw/v1/glossary | GET / POST | Read glossary / create entry |
Example: Translate a post
POST /wp-json/wbw/v1/translateContent-Type: application/jsonAuthorization: Bearer <token>{ "post_id": 42, "target_lang": "en", "force": false}
Frequently Asked Questions (FAQ)
Which languages are supported?
Claude AI supports over 100 languages. DeepL currently supports 31 languages. A complete list can be viewed in the plugin settings under Target Languages.
Is WooCommerce supported?
Product pages, categories, and shop pages are translated. The checkout form and emails are not yet included in version 5.x.
Can I combine the plugin with Yoast SEO?
Yes. WBW Translation reads the meta titles and descriptions set by Yoast and translates them automatically. The sitemap integration is also compatible.
What happens when the API limit is reached?
The translation request is placed in the queue and retried on the next cron run. An admin notification will be issued.
Changelog
5.1.3 (AI Translate Pro / Freemius)
- Freemius SDK integrated (Licensing, Opt-in, Deactivation Feedback)
- License check for premium features
- Opt-in mechanism for anonymous usage statistics
5.1.2 (WBW)
- REST API endpoints added
- Batch translation via WP-CLI
- Database diagnostics tool
- Improved error handling for API timeouts
5.1.1
- hreflang x-default corrected
- Canonical tag conflict with Yoast resolved
- PHP 8.2 deprecation warnings eliminated
5.1.0
- JSON-LD translation
- Glossary function
- CSV import/export
As of: April 2026.
