Related Projects
Along with WPML, we also maintain several related projects, which allow other kinds of sites to run multilingual.
MarketPress Multilingual »
Jump directly to...
Having installed WPML and WPML-MarketPress plugin you can get MarketPress fully multilingual.
You can translate Products, Product categories and Product tags. Also you can have complete UI translated, custom URL slugs, emails, messages…

WooCommerce Multilingual »
WooCommerce lets you build e-commerce sites with WordPress. WooCommerce Multilingual makes it fully compatible with WPML.
What you’ll need:
- The recent version of WooCommerce. WPML support is available from version 1.4 and above.
- The recent version of WooCommerce Multilingual (will also be available from the WordPress plugins repository soon)
- The recent version of WPML, including the String Translation and Translation Management modules. WooCommerce support is available from version 2.4.2 and above
Now that you have all plugins installed and activated, you can start adding translations.
Translating Store Pages
WooCommerce can automatically create the store pages for you, but you’ll need to translate them.
Go to Pages:
If you see a + icon next to these pages, click on it. This will add the translation.
You should copy the shortcodes from the original language. For example, this is what we see in the Cart page:
This shortcode tells WordPress to display the cart. You need to have it in all translations. The translated pages have a button that lets you copy from the original language. Use it to copy the page content.
Make sure that you are translating the correct page. Please look at the right sidebar top, where is, ‘This is a translation of’ text. E.g, If you are translating the cart page, there should be selected default language cart page.
Hint: if you’re using WPML’s Translation Management module, you can select all the e-commerce pages together and send them all to translation. In the translation editor, copy the content from the original language.
When you’re done, go to WooCommerce settings page and then select the pages tab. There you should have the same settings for the main language as in a screenshot.
Translating Products
Similarly to the e-commerce pages that you’ve translated, you should also translate the products themselves.
The Products list is a custom admin page and doesn’t include WPML’s translation controls (the + and pencil icons).
You can translate products either when editing them or using WPML’s Translation Management module.
This is how the product-edit page looks like:
You can translate by clicking on the + icon.
WPML will automatically synchronize the non-text attributes of products. This includes the cost, weight dimensions and other features that don’t require translation. You can translate the names and description. If you want, you can enter the same names in different languages.
Translating Product Categories
At the bottom of the page you can set the language of category and switch languages at the top of the page.
Translating Attributes
Go to Products -> Attributes -> Configure terms. At the bottom of the page you’ll see the available languages.
Translating General Texts
Your e-commerce site includes many small texts that are not part of any page or product. These come from the theme and from WooCommerce.
Both the theme and WooCommerce should come with their .mo files. You can complete any missing translations using WPML’s String Translation module. Follow the instructions for theme localization.
Then, go to WPML->String Translation to actually translate the texts.
All WooCommerce strings are under context ‘plugin woocommerce’. You can use the Search tool to quickly find the texts that you need to translate.
For example, this is the ‘order tracking’ page:
It includes several strings that need translation (highlighted).
Go to WPML->String Translation, set the context to ‘plugin woocommerce‘ and search for each of these strings:
Click on the ‘translations’ link to open and edit them. Translate, click on the ‘translation is complete‘ box and save.
Inventory, Emails and Other E-Commerce Backend Issues
You might have noticed that WPML creates new products per language. Regardless of which language visitors used to order products, the shop admin will always see the items in the default language being ordered. This allows to manage inventory and track shipments correctly.
Visitors will receive all notification emails in their right language. For this to happen, the site admin must provide the translations. Like other texts, emails are translated via the String Translation screen.
We’ve made every effort to design a completely native feel for customers and shop admins. If you need any help, please use our technical forum.Continue reading
JigoShop Multilingual tutorial »
Create a fully multilingual ecommerce site with JigoShop and WPML. This makes products and stores translatable, lets your visitors quickly and easily switch languages, and order products in the own language. This tutorial to find out how you can do it.
Getting Started
To get started you’ll need to install some plugins:
- The recent version of JigoShop
- The recent version of JigoShop Multilingual
- The recent version of WPML, including the String Translation and Translation Management modules
Translating Pages
Now you’re ready to start adding translations.
Go to the page admin screen. Click the edit button under the checkout page. You’ll see the [jigoshop_checkout] shortcode. Every JigoShop page includes a shortcode. This must be in the translated pages too. In the right sidebar, where it says “translate yourself”, click on the + icon to translate the page. If you are translating the checkout page, for example, the dropdown ought to say “checkout”.
In the content box input the [jigoshop_checkout] shortcode. Click on publish button. The checkout page will now appear in your chosen language!
Now you’ve just got to do the same with the rest of your pages – remember to write the correct shortcode.
Translating Products
Now, it’s time to add a few products with translations. You just learned to translate WordPress pages, but you also need to translate the products themselves. You can either translate products manually, or using WPML’s Translation Management module.
WPML will automatically synchronize the non-text attributes of products. This includes the cost, weight dimensions and other features that don’t require translation. If you want, you can enter the same names in different languages.
Translating Product Categories
At the bottom of the page you can set the language of category and switch languages at the top of the page.
Translating Attributes, Variations and Tags
Go to Products -> Attributes -> Configure terms. At the bottom of the page you’ll see the available languages.
It’s the same for variations and tags:
This is how the tags edit page looks like:
Translating General Texts and Emails
You also need to translate the rest of the site content. This is normally done using a . mo file. Most .mo files do not include e-shop strings. You have two choices, use WPML’s ‘String Translation’ plugin and do it manually, or use a .mo file.
Your e-commerce site includes many small texts that are not part of any page or product. These come from the theme and from JigoShop. You should use WPML’s ‘String Translation’ plugin. Go to WPML >> String Translation to actually translate the texts.
A fully multiligual ecommerce site, ready for the global market – made possible with WPML and JigoShop.
Got any questions or need any help?
Drop on by our support forums where are team are always ready to help you out. Continue reading
BuddyPress Multilingual »
BuddyPress Multilingual turn BuddyPress sites into fully multilingual, including standard WordPress content and activity streams.
This is how it looks like in action:
Both guest sites and the main site can have contents in many languages (using WPML). This plugin makes the BuddyPress controls language-aware, so that when visitors navigate around the site, they remain in the same language.
Gravity Forms Multilingual »
Gravity Forms creates flexible data entry forms. Gravity Forms Multilingual allows translating these forms, so that they appear in the language of the page they’re inserted in.
Instead of creating different forms for different languages, you can create one form and translate it. Then, insert the same form into pages in different languages and it will show translated. The translation includes the form and the feedback message to users after they submit it.
Shopp Multilingual »
Shopp Multilingual connects to both Shopp and WPML. It turns Shopp products and categories into fully multilingual.
Translation Auto-Downloader »
This is a small piece of code which you can add to any WordPress theme. It will automatically fetch localization files for the theme from our theme localization project.
If you’re building many themes and translating them to many languages, this gadget can save you a lot of time.
You can release new themes as soon as they’re ready. Add your theme to our theme localization project, add the auto-downloaded code to your theme and you can distribute it.
When new translations become available, or existing translations update, your users will get the updates right away. The user will get a note on the admin page, saying that there’s new translation and asking for permission to download. And, that’s it. The new translations are ready to use.
Views - Query and Display WordPress Content »
Views allow displaying groups of pages (or posts). For example, the default WordPress index can be created with a view.
Other, less trivial examples:
- A search-able list of products (for a simple shopping cart)
- Client testimonials
- Showcase of recent projects
- Recent blog posts to add to the home page
Views make it easy to use the custom posts and taxonomies of WordPress by displaying custom items in a flexible way, without coding templates or using WordPress API functions.
Types - Manage Custom Fields and Custom Types »
Types makes it easy to fully customize WordPress sites using custom post types, custom taxonomy and custom fields.
When you need a site with more than the standard pages and posts, Types provides the solution. You can define your own content types from A to Z, without leaving the WordPress GUI. This is what Types offers:
- Create custom post types
- Create custom taxonomy
- Define custom fields and meta boxes in the WordPress editor
- Set up parent / child relationship between different post types
qTranslate Importer »
qTranslate is another plugin for multilingual WordPress. It works much differently from WPML. Instead of having different languages in different posts, qTranslates places all languages in the same post.
This importer tool splits the content of different languages to different posts, allowing your site to run with WPML.
The plugin is available from the WordPress plugins repository:
http://wordpress.org/extend/plugins/qtranslate-to-wpml-export/
Single-Language Conversion (no WPML, strip all translations)
If you’re using the qTranslate Importer plugin without WPML, the output will be a site with just one language. The conversion process will ask you which language you want to maintain. All other languages will be deleted from the site.
This is useful if you’ve been experimenting with qTranslate and now you want to clean the database from all those language meta-tags.
At the end of the processing, all posts will have just the one language that you choose.
How it works:
- Disable qTranslate and enable the qTranslate Importer plugin.
- Backup your database. Seriously, even if you’re just experimenting, you have to backup your database.
- Go to Settings->qTranslate importer and choose the language that you want to keep.
- Click on the ‘Clean’ button. This will go through all the site’s content and remove the language meta data from the content.
The plugin screen looks like this:
Choose which language you want to keep and accept the two checkboxes. Then, you can start the cleanup.
Multi-Language Conversion (convert from qTranslate to WPML)
If you have WPML, the qTranslate Importer will convert the site from all languages in one post to different languages in different posts. When the conversion is done, you’ll be able to use WPML on the site.
The best way to do this conversion is to disable, qTranslate, enable WPML and the qTranslate Importer and let it do everything automatically.
The import process will:
- Check which languages qTranslate had used and enable the same languages in WPML
- Check which language permalinks you used in qTranslate and choose the same setting in WPML
- Process all posts, taxonomy and custom fields and create separate ones for different languages
- Produce URL rewrite rules that allow you to redirect incoming links to their new URLs
To do this in a safe way, please follow these steps:
- Disable qTranslate and enable WPML and the qTranslate Importer plugin.
- Backup your database. This is critical. You have to do this before running the import.
- Go to Settings->qTranslate importer and review the planned data conversion.
- Click on the ‘Start’ button. This will go through all the site’s content convert it to use WPML.
The import-to-WPML process
The import screen looks like this:
As it runs, you’ll see the progress. Don’t interrupt the import process until it says ‘complete’. The screen should update every few seconds, as it processes 10 posts at a time.
Adding URL redirects
Once the import completes, you’ll see this:
If you can edit the .htaccess file, copy everything from the .htaccess rewrite-rules box and add it to your site’s .htaccess file.
There’s a ‘validate’ button which will read that file and check that you added the rules to the correct location.
Alternatively, you can add the redirect information to your theme. Click on the button to download the PHP file with redirect rules and save it in your theme’s folder.
Then, add the following line to the functions.php file in the theme:
include TEMPLATE_PATH . '/qt-importer-redirects.php';
This is a PHP statement, so it should go inside a <?php … ?> block.
Other texts that you might have to edit manually
Many sites that use qTranslate have used the language meta tags in various places, hard-coded in PHP or in option pages. Once you move away from qTranslate, you’ll need to use different ways to translate these strings.
First, locate them. Go through different admin screens in your theme and plugins that you’re using and see if there are any tags like:
<!–-:en–->English text<!–-:–-><!–-:fr–->French text<!–-:–->
Replace these with just the text in the default language.
Then, you can use WPML’s String Translation module to translate these to any language.Continue reading


















