Beskrywing
Translation Cleaner for WPML helps you keep your multilingual WordPress site clean by identifying and fixing three common categories of WPML data corruption, all from a single admin tool under Tools Translation Cleaner for WPML.
Module 1 — Orphan Translations
Finds translated posts whose main-language counterpart no longer exists (deleted or trashed). These orphaned records consume storage, clutter your admin, and break WPML’s translation groups.
- Bulk action: Move to Trash (reversible) or Permanently Delete
- Reason codes per row: Missing original, Original deleted, Original trashed
- Every deletion is re-validated immediately before execution — if the original was restored since the scan, the item is skipped
Module 2 — Misplaced Originals
Finds posts that WPML treats as originals (source_language_code = NULL) but are registered under a language that is not your main language — with no main-language version in that translation group at all.
This typically happens when content is created directly in a secondary language without going through the main language first. Left uncorrected, these posts can cause translation workflow issues and incorrect language flags.
- Per-row fix: select the post’s actual language from a dropdown and reassign it — no bulk guessing
Module 3 — Swapped Originals
Finds cases where a secondary-language post carries the “original” flag while a live main-language version exists in the same translation group. WPML incorrectly treats the secondary post as the source, which inverts the translation relationship for both posts.
- Per-row fix: one click to promote the main-language post to original and demote the secondary to a translation — the trid (translation group) is preserved
Common features across all modules
- Scan all WPML-tracked post types, including non-public types like
nav_menu_item - Filter by post type and main language
- Detailed results table with sort, search, and pagination
- Export results to CSV before taking any action
- Developer hooks:
wmtc_protected_post_ids,wmtc_orphan_results,wmtc_before_delete,wmtc_after_delete
Requirements
- WPML must be installed and active
Installation
- Upload the
wpml-translation-cleanerfolder to/wp-content/plugins/ - Activate the plugin through Plugins Installed Plugins
- Navigate to Tools Translation Cleaner for WPML
- Select a module, choose your main language and post types, then click Run Scan
Kwel-vrae
-
Does this work with WooCommerce Multilingual (WCML)?
-
Yes. The scanners detect issues regardless of how WPML or WCML registered the content, including products managed in WCML’s independent mode.
-
Will it delete or modify content incorrectly?
-
For orphan deletions, every item is re-validated against a fresh database scan immediately before the action runs. For reassignment actions (Misplaced Originals, Swapped Originals), the fix is performed via WPML’s own
wpml_set_element_language_detailsAPI — no raw data is modified outside of WPML’s own logic. -
Can I undo a deletion?
-
Use Move to Trash for reversible cleanup. Permanently Delete is irreversible — always export a CSV and back up your database first.
-
Can I undo a language reassignment?
-
Not automatically. Before running fixes in bulk, export a CSV so you have a record of the original state. The CSV can be used as a reference to manually revert if needed.
-
What post types are scanned?
-
All post types that WPML is tracking in
icl_translations, includingnav_menu_itemwhich is a common source of orphaned translations invisible to standard WordPress post type queries. -
How do I exclude specific posts from cleanup?
-
Use the
wmtc_protected_post_idsfilter:add_filter( 'wmtc_protected_post_ids', function( $ids ) { $ids[] = 42; return $ids; } ); -
Is this plugin affiliated with WPML or OnTheGoSystems?
-
No. This is an independent tool built to work alongside WPML. WPML is a trademark of OnTheGoSystems.
Aanbevelings
There are no reviews for this plugin.
Contributors & Developers
“Translation Cleaner for WPML” is oopbron sagteware. Die volgende mense het bygedra tot die ontwikkeling van hierdie uitbreiding:
ContributorsTranslate “Translation Cleaner for WPML” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.0.0
- Initial release
- Module: Orphan Translations — find and delete orphaned translation posts
- Module: Misplaced Originals — find and reassign posts flagged as originals in the wrong language
- Module: Swapped Originals — fix inverted original/translation relationships within a translation group