Title: qTranslate X Cleanup and WPML Import
Author: Amir Helzer
Published: <strong>February 29, 2012</strong>
Last modified: August 20, 2026

---

Search plugins

![](https://s.w.org/plugins/geopattern-icon/qtranslate-to-wpml-export.svg)

# qTranslate X Cleanup and WPML Import

 By [Amir Helzer](https://profiles.wordpress.org/amirhelzer/)

[Download](https://downloads.wordpress.org/plugin/qtranslate-to-wpml-export.3.0.3.zip)

 * [Details](https://en-au.wordpress.org/plugins/qtranslate-to-wpml-export/#description)
 * [Reviews](https://en-au.wordpress.org/plugins/qtranslate-to-wpml-export/#reviews)
 *  [Installation](https://en-au.wordpress.org/plugins/qtranslate-to-wpml-export/#installation)
 * [Development](https://en-au.wordpress.org/plugins/qtranslate-to-wpml-export/#developers)

 [Support](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/)

## Description

> 
> ### qTranslate X plugin was abandoned years ago, and we don’t actively maintain this migration plugin anymore.
> 

This plugin can either cleanup the qTranslate X meta-HTML tags from your site and
leave just one ‘clean’ language, or migrate all languages to WPML’s format.

**Very important: This plugin will modify the entire content of your database. You
must backup your database before attempting to use it.**

For complete documentation, please refer to the [qTranslate uninstall and WPML importer documentation](https://wpml.org/documentation/related-projects/qtranslate-importer/?utm_source=plugin&utm_medium=gui&utm_campaign=qtranslate).

#### qTranslate X uninstall and cleanup mode

**Must-read: All the issues mentioned in the reviews are solved. We are happy to
announce the reintroduction of the clean-up mode with plugin version 2.0**

This mode is intended if you just want to keep one language in your site and you
want to clean up the language meta-tags that qTranslate added. For this mode, you
don’t need WPML.

Instructions:

 1. Save all qTranslate X settings
 2. Go to the Plugins admin page and de-activate qTranslate X
 3. Install & activate QT Importer
 4. Go to Options -> QT Importer, select language to keep and click Start.

#### Migrate all languages from qTranslate X to WPML

In this mode, the QT import plugin will convert the language information from qTranslate’s
language tags format to WPML’s post-per-language format. For this to work, you must
have [WPML](http://wpml.org) active in the site (but not necessarily configured).

Instructions:

 1. Save all qTranslate settings
 2. Go to the Plugins admin page and de-activate qTranslate X
 3. Have WPML activated, but not yet configured (just activated)
 4. Install & activate QT Importer
 5. Go to Options -> QT Importer and click Start
 6. Add redirects from old URLs to new URLs

The import runs in small batches so it doesn’t have timeout issues with large databases.
You can run it on sites of any size.

During the import process, the plugin generates a set of URL redirect rules. These
rules tell visitors and search engines that the URLs in your site have changed (
from qTranslate’s format to WPML’s format). When the import completes, you’ll be
able to export these rules either as rewrite directives for your .htaccess file 
or as a PHP file to add to the theme.

You can skip the redirect rules, but then, incoming links to internal pages may 
lead to 404 pages.

The import tool converts posts, meta data and taxonomy. We tried to take every possible
scenario in mind, but there’s no alternative to manual testing. Please consider 
spending time reviewing the final result and possible doing some last touch-ups 
before relaunching the site with WPML.

## Screenshots

[⌊Import screen⌉⌊Import screen⌉[

Import screen

## Installation

Upload the plugin to your blog, activate it.

## FAQ

### Which version of WPML can I use this import with?

It’s been tested on WPML 3.5.3 and above. Previous versions might work, but might
have unpredictable behavior.

### Do I have to get WPML to use this?

This plugin has two modes of operation. Without WPML, it will let you clean the 
qTranslate X language codes from your content and keep just one language. With WPML,
you’ll be able to keep all languages.

### How long does the import take?

It should be a few seconds for every 100 posts (depending on your server’s CPU and
database access). If the import runs for 10 minutes, it probably means that something
is wrong. You should contact us in WPML technical forum and get help.

## Reviews

![](https://secure.gravatar.com/avatar/a826bfc777c2d4fb78532adbc733f460ce81a24c3fca7cf66016d98d60d67c6f?
s=60&d=retro&r=g)

### 󠀁[It works with a potential improvement](https://wordpress.org/support/topic/it-works-with-a-potential-improvement/)󠁿

 [AgusN](https://profiles.wordpress.org/agusn/) November 1, 2022 1 reply

Thanks for your plugin, it help me to clean up qtranslate-x tags on all of my posts
and custom post types. I found that this plugin does not clean up qtranslate-x tag
on WP Navigation ( appearance->menu ), and taxonomy descriptions. It would be nice
and more helpful if it can be improved to that direction. Thanks again for the plugin.

![](https://secure.gravatar.com/avatar/a3d9229e01f5d040be9637a126f5c3d090cc06048b0e60a65109734e90006356?
s=60&d=retro&r=g)

### 󠀁[Worked for me on WP 5.3.2](https://wordpress.org/support/topic/worked-for-me-on-wp-5-3-2/)󠁿

 [rebelord](https://profiles.wordpress.org/rebelord/) January 2, 2020

thanks!

![](https://secure.gravatar.com/avatar/1076b246a86ed941c67817c842efde378a63fc71acb0c4b5a0d5c1ff819066ee?
s=60&d=retro&r=g)

### 󠀁[Works but …](https://wordpress.org/support/topic/works-but-72/)󠁿

 [JonasVorwerk](https://profiles.wordpress.org/jonasvorwerk/) May 24, 2019

Plugin seem to do it's job, but never completes since the browsers gets unresponsive
after some minutes of processing. I'm using this plugin on a site with a few thousand
posts and pages. Started over a few times but it's unclear if the plugin starts 
over or continues the overal process.

![](https://secure.gravatar.com/avatar/02d7a4382752252173c60b0b79ce1548be97680d606e6ae7588367838f3b6c88?
s=60&d=retro&r=g)

### 󠀁[A real time saver](https://wordpress.org/support/topic/a-real-time-saver-33/)󠁿

 [David Garcia Watkins](https://profiles.wordpress.org/dgwatkins/) January 28, 2019

Migrating my QTranslate site to WPML worked flawlessly and saved me a lot of time.

![](https://secure.gravatar.com/avatar/3cf72c1a4bbba419580553473b56eeb153937d5bff2642acbf00af3df612629f?
s=60&d=retro&r=g)

### 󠀁[Cleaner or Destroyer?](https://wordpress.org/support/topic/cleaner-or-destroyer/)󠁿

 [satsoklgr](https://profiles.wordpress.org/satsoklgr/) September 20, 2018

This must not considered as a plugin, it is a complete destroyer of sites, after
the "cleaning" you have no titles, no content, and only in very few pages there 
are only the languages brackets left… Where did you tried it? i tried it in 2 test
sites because i couldn`t dare to use it in a proper site, and i tried it with native
wordpress themes. You should be a shame that you still have this killer crap in 
your repository, remove this immediately. Everybody keep away, don`t even bother
to download it!

![](https://secure.gravatar.com/avatar/d39ce2540c4d3e7245a64269949eafb88723cd213796c5eb042d7f010c10731e?
s=60&d=retro&r=g)

### 󠀁[Does half of the job](https://wordpress.org/support/topic/does-half-of-the-job/)󠁿

 [nspace1999](https://profiles.wordpress.org/nspace1999/) July 23, 2018

It does'nt translate all the medias, so half of yours posts will be without images
or videos in the second language. Besides, on certain posts it removes totally what's
before the more link. In qtranslate you don't need to translate the categories so
after using the plugin, you will have to translate some taxonomies and then you 
will need to set the categories for the posts in second language. So if you have
only a couple of posts go for it, if you have hundreds and hundreds posts, pick 
a translation system at the beginnig.

 [ Read all 26 reviews ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/)

## Contributors & Developers

“qTranslate X Cleanup and WPML Import” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ Amir Helzer ](https://profiles.wordpress.org/amirhelzer/)
 *   [ Pierre Sylvestre ](https://profiles.wordpress.org/strategio/)
 *   [ David Garcia Watkins ](https://profiles.wordpress.org/dgwatkins/)

[Translate “qTranslate X Cleanup and WPML Import” into your language.](https://translate.wordpress.org/projects/wp-plugins/qtranslate-to-wpml-export)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/qtranslate-to-wpml-export/),
check out the [SVN repository](https://plugins.svn.wordpress.org/qtranslate-to-wpml-export/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/qtranslate-to-wpml-export/)
by [RSS](https://plugins.trac.wordpress.org/log/qtranslate-to-wpml-export/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 3.0.3

 * Bump tested WordPress version.

#### 3.0.2

 * Add a security check to the cleanup process.
 * Fix importing posts when QTranslate language code is uppercase.
 * Fix importing posts with a title that is 3 characters long.

#### 3.0.1

 * Bump tested WordPress version.

#### 3.0.0

 * Fixed the display of the notice to disable qTranslate before the import process.
 * Moved scripts into separate directory.
 * Updated documentation link.
 * Fixed not created htaccess redirects.

#### 2.0.4

 * Fixed PHP Fatal error: Uncaught ArgumentCountError when importing taxonomy terms(
   wpmlbridge-198 )

#### 2.0.2

 * fixed readme file

#### 2.0

 * cleanup mode reintroduction, you can use this plugin again to clean posts after
   disabling qTranslate plugin (wpmlbridge-189)

#### 1.9.8

 * fixed issue when all posts are bing imported to default language (wpmlbridge-
   188)

#### 1.9.7.2

 * added information about WP tested version

#### 1.9.7

 * added support for Greek language import (wpmlbridge-184)

#### 1.9.6

 * Fixed accidental cutting last three letters from titles if the titles are not
   translated (wpmlbridge-180)

#### 1.9.5

 * Fixed migration when qTranslate uses default url structure (wpmlbridge-178)

#### 1.9.4.1

 * Fixed the issue with import containing  tags (wpmlbridge-172)

#### 1.9.4

 * Fixed the issue with import containing  tags (wpmlbridge-172)

#### 1.9.3

 * Fixed PHP warning about invalid argument for join() (wpmlbridge-153)

#### 1.9.2

 * Fixed issues with empty language names (wpmlbridge-146)
 * More descriptive instructions how to update qTranslate settings before migration(
   wpmlbridge-145)

#### 1.9.1

 * Fixed warnings (wpmlbridge-139)

#### 1.9

 * Better handling uppercased language codes (wpmlbridge-136)
 * Handling empty titles (wpmlbridge-138)
 * Fixed missing language information about primary language (wpmlbridge-137)
 * Removed notices during metadata import (wpmlbridge-139)

#### 1.8.1

 * Fixed issue with uppercased language codes (wpmlbridge-103)

#### 1.8

 * Added support for legacy qTranslate (without X) syntax

#### 1.7.2

 * Changed notice to report issues in our forum

#### 1.7.1

 * Added notice to report any issue to our forum

#### 1.7

 * Plugin updated to be compatible with WPML 3.5 and newer

#### 1.6.1

 * qTranslate name updated to qTranslate X to avoid confusions (old qTranslate, 
   without X is not supported)

#### 1.6

 * Tested with WP 4.6 and 4.7-nightly
 * Updated to use current WPML functions (as in WPML 3.5.3.1)

#### 1.5

 * Tested with WP 4.1
 * Changed title format to “%Original title% (%lang_code%)” if title not translate
 * Bug fix: terms not synchronized when used uppercase codes in qTranslate X
 * Bug fix: translated posts not imported if title not translated

#### 1.4

 * Tested with WP 4.0
 * Added dependency for disable qTranslate X before import to WPML
 * Added compatibility with WPML 3.1.8.*
 * Bug fix: convert language codes from uppercase to lowercase

#### 1.3

 * Tested with WP 3.9.1
 * Feature: using batches for taxonomies
 * Bug fix: import custom post types
 * Bug fix: copy content/title/excerpt to default language if translations don’t
   exists
 * Added “No” and “cz” codes to language mapping

#### 1.2

 * Bug fix: correct language mapping for Hebrew.

#### 1.1

 * Bug fixes: contents not being visible after import in some circumstances and 
   others.

#### 0.2.2

 * Bug fixes

#### 0.2

 * Adds all custom fields to posts. If they have no translation, they are added 
   to posts in all languages.
 * Fixes cases where the importer was stuck.

#### 1.0

 * More bug fixes: importing terms, handling posts without titles, posts without
   translation in the default language and more

#### 0.1

 * Initial release

## Meta

 *  Version **3.0.3**
 *  Last updated **2 months ago**
 *  Active installations **800+**
 *  WordPress Version ** 3.0 or higher **
 *  Tested up to **7.1.3**
 *  Language
 * [English (US)](https://wordpress.org/plugins/qtranslate-to-wpml-export/)
 * Tags
 * [i18n](https://en-au.wordpress.org/plugins/tags/i18n/)[multilingual](https://en-au.wordpress.org/plugins/tags/multilingual/)
   [qtranslate](https://en-au.wordpress.org/plugins/tags/qtranslate/)[qtranslatex](https://en-au.wordpress.org/plugins/tags/qtranslatex/)
   [wpml](https://en-au.wordpress.org/plugins/tags/wpml/)
 *  [Advanced View](https://en-au.wordpress.org/plugins/qtranslate-to-wpml-export/advanced/)

## Ratings

 3.5 out of 5 stars.

 *  [  14 5-star reviews     ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/?filter=5)
 *  [  2 4-star reviews     ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/?filter=4)
 *  [  1 3-star review     ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/?filter=2)
 *  [  9 1-star reviews     ](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/reviews/)

## Contributors

 *   [ Amir Helzer ](https://profiles.wordpress.org/amirhelzer/)
 *   [ Pierre Sylvestre ](https://profiles.wordpress.org/strategio/)
 *   [ David Garcia Watkins ](https://profiles.wordpress.org/dgwatkins/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/qtranslate-to-wpml-export/)