Skip Navigation
Home » Documentation » Related Projects » WooCommerce Multilingual – Multilingual WooCommerce Sites Made Easy

Required Plugins And Setup

To use WooCommerce Multilingual, you need to have the following plugins installed and activated:

  • WooCommerce Multilingual
  • WPML 4.4.11 or above
  • WPML String Translation
  • WPML Translation Management (not needed for WPML 4.5 and above)
  • WooCommerce 3.9.0 or later

If you want to use different media (images) for different translations of a product, you need to install WPML Media.

If you are working with a developer, they should install and set up all the necessary components listed in this section.

You can get all WPML components, including WooCommerce Multilingual, from your WPML Downloads page. Both WooCommerce Multilingual and WooCommerce are also hosted in the WordPress plugins repository. Got all plugins? Let’s start!

Using the Installer For Easy Plugin Download and Updating

WooCommerce Multilingual has a built-in Installer for downloading, activating, and updating all of the required plugins.

After you activate WooCommerce Multilingual, go to PluginsAdd New and click the Commercial tab.

From here, you have the option to buy a WPML license or enter the registered site key if you already bought WPML. Purchase or register WPML to see a list of plugins available to download, activate, and update.

Commercial Tab of the Plugins Page After Registering Your Site
Commercial Tab of the Plugins Page After Registering Your Site

Using The Setup Wizard

WooCommerce Multilingual features a Setup Wizard to help guide you through the basic steps of configuring your site with the WooCommerce Multilingual plugin.

Once you activate all the required plugins, you will be prompted to start the WooCommerce Multilingual Setup Wizard.

Start the Setup Wizard
Starting the Setup Wizard

Setting Up the Store Pages

When going through the setup wizard, WooCommerce Multilingual automatically sets up the standard WooCommerce store pages to appear in all your site’s languages. You can also do this manually by going to WooCommerceWooCommerce Multilingual and clicking the Status tab. If you did not yet set up the store pages during the setup wizard, there will be a message telling you that the store pages don’t exist and offering to create them.

WooCommerce Multilingual Status And Alerts
WooCommerce
Multilingual Status And Alerts

WooCommerce Multilingual creates these pages with the available translated page titles. You can always change the page title translations later.

Translating Products

Translating Your Products Automatically

You can translate your whole site automatically using Translate Everything mode. This allows you to translate your store pages, products, product taxonomies, and more immediately as you create them or update them.

Read more about translating your site automatically.

If you want to translate all your products automatically, but not your posts and pages, you can do so using bulk automatic translation.

Translating Products Yourself

To translate your products yourself, go to the WooCommerceWooCommerce Multilingual page. This takes you to the Products tab.

Products Translation Tab Listing All Products
Products
Translation Tab Listing All Products

Each language has its own column with translation status icons. They help you find products that are untranslated or need translation updates. Click on the Pen icon to edit existing product translations or the plus icon to add a new translation using the Advanced Translation Editor.

Translating a product with the Advanced Translation Editor
Translating a product with the Advanced Translation Editor

You can also send products to be translated by your own team of translators or a professional translation service using Translation Management.

If you don’t use Translate Everything to translate all your products automatically, you have two options for how to display translated products on your site:

  • Display only translated products on your site
  • Display the translated products, but if translations do not exist, display products in the default language. In this case, only the product information is displayed in the original language while the rest of the site, like menus and widgets, are still displayed in the current language. Learn more about this on the page about displaying untranslated products in secondary languages.

Translating Product Add-ons

WooCommerce Multilingual allows you to translate fields added to Products by various WooCommerce extensions. All the fields and options from these supported extensions are set to Translatable by default in WPMLSettings.

Translated add-on fields displayed on the front-end
Translated add-on fields displayed on the front-end

Translating Product Variations

WooCommerce Multilingual automatically creates and synchronizes product variations in all languages. After you create a variation in the default language, save the product (in the default language) and WooCommerce Multilingual will immediately create the same variations for all translations of the product.

Product variations can be translated in the Products tab, just like simple products. When you translate your product variation, your custom product attributes are available for translation as well.

Translating WooCommerce product variations
Translating WooCommerce product variations

You can also translate variation image titles. If the variations use global product attributes, they need to be translated in the corresponding taxonomy tabs. Once you’ve translated all attributes, you can automatically generate the variations for the translated products.

After translation of attributes is done, the related variations of the products in other languages need to be created as well. This is done by using the Synchronize attributes and update product variations button under the attribute tab.

Translating Cart and Checkout pages

Translating WooCommerce Checkout and Cart pages is a bit different than translating the rest of WooCommerce content. The theme and plugins in your site often provide these translations but in some cases, you need to do some additional steps.

Translating Product Categories, Tags, Attributes and Custom Taxonomies

Most stores are arranged by product categories, and some also use tags. If you are using variations, you are probably using product attributes as well. These are all stored as WordPress taxonomies, and WooCommerce Multilingual makes it easy to translate all of them from the respective tabs in WooCommerceWooCommerce Multilingual.

Translating attributes
Translating attributes

Click the plus icon to enter the translations of your taxonomy term name, slug, and optional description. The name is what’s displayed on the screen, the slug appears in the URL, and the description shows on the WordPress admin when editing. If your store includes many categories or other taxonomy terms, use the search function to locate them quickly.

If you prefer not to translate your taxonomy, you can set WooCommerce Multilingual to display original product categories, tags, and attributes if their translations are not available.

Translating Custom Taxonomies From the WooCommerce Multilingual Page

There are many plugins, such as Toolset Types, that allow you to add custom taxonomies to your site, and some plugins and themes automatically add custom taxonomies to Products.

WooCommerce Multilingual allows you to translate any custom taxonomies associated with WooCommerce Products just like any of your standard taxonomies.

Once a custom taxonomy is associated with Products, a Custom Taxonomies tab appears on the WooCommerceWooCommerce Multilingual page.

Translating custom taxonomy and its terms
Translating custom taxonomy and its terms

You can translate them by clicking the plus icon for the corresponding language.

Translating and Displaying Product Reviews

If your customers leave reviews in different languages, you can choose to show only reviews created in the selected language or show reviews in all languages by default. You can also translate product reviews by going to WPMLString Translation.

Displaying translated product reviews in all languages
Displaying translated product reviews in all languages

Read more about translating and displaying product reviews.

Translating Image Texts

WooCommerce Multilingual automatically synchronizes all images between product translations. This includes the featured image, image gallery, and all variation images so that all translations display the same images. When you translate your product, image texts such as caption, title, or description are also available for translation.

Translating product image texts
Translating product image texts

If you want to use different images for your translations, you can upload different images using Media Translation.

Translating URLs

Different component parts of the URLs can be translated with WooCommerce Multilingual. To translate these components, go to the WooCommerceWooCommerce Multilingual page and click the Store URLs tab. You will see a list of URLs and a column with the translation status for each language. Click on the Pen icon to edit existing URL translations or the plus icon to add a new translation.

Store URLs Tab
Store URLs Tab

Here, you can translate:

  • Product permalink base (e.g. http://example.com/product/book)
  • Product category base (e.g. http://example.com/product-category/men)
  • Product tag base (e.g. http://example.com/product-tag/new)
  • Product attribute base (e.g. http://example.com/filters/color/white/)
  • Product attribute slugs (e.g. http://example.com/filters/color/white/)

Please note that an attribute should be marked as translatable in WPMLSettings and have archives enabled in ProductsAttributes to be able to translate the slug.

Translating WooCommerce Endpoints

Endpoints are an extra part of the URL that WooCommerce detects and uses to render the appropriate content on the page.

For example, you may have a page yoursite.com/my-account. If you add the edit-account endpoint to this URL, making it yoursite.com/my-account/edit-account, WooCommerce will show the Edit account page instead of the My account page.

Endpoints can also be translated via the Store URLs tab.

Two of the most common endpoints are the account page endpoint and the checkout page endpoint. You can find more details about endpoints in the official WooCommerce documentation.

Translating URLs for Shop, Cart, Checkout, and Account pages

Page URLs are translated by translating the respective WooCommerce pages.

  • http://example.com/shop/ (English)
  • http://example.com/fr/boutique/ (French)

Translating Shipping Classes

WooCommerce allows you to set up different shipping options for your products. You can set them on the WooCommerce → Settings page, under the Shipping tab.

Shipping classes allow you to group items of a similar type. For example, you can create shipping classes for small, medium, and large packages, with different shipping costs for each.

After you create the shipping classes in the site’s default language, you can translate them under the Shipping Classes tab of the WooCommerceWooCommerce Multilingual page.

Shipping Classes page in WooCommerce Multilingual
Shipping
Classes page in WooCommerce Multilingual

Automatic Inventory and Product Attributes Synchronization

When you sell a product, the language the sale was in doesn’t matter for inventory management. Set your inventory in the default language product setting. WooCommerce Multilingual automatically updates your inventory when customers buy in different languages. The same goes for non-textual product attributes, such as size and weight. You need to enter them in the default language only. WooCommerce Multilingual will set them the same for all translated products.

Using Multiple Currencies

Enabling Multiple Currencies

WooCommerce Multilingual helps you to use multiple currencies on your sites.

Go to the WooCommerce → WooCommerce Multilingual and click the Multi-currency tab. You can configure everything related to the multi-currency: secondary currencies and their properties, add more currencies, set different prices for different currencies, and change the currency switcher options.

Options for using multiple currencies on the Multi-currency tab
Options for using multiple currencies on the Multi-currency tab

The multi-currency mode is disabled by default in WooCommerce Multilingual. Once enabled, you can configure custom formatting options for the separate currencies. You can even show specific currencies for given languages or based on a customer’s location.

When setting up your currencies, you can set up automatic exchange rates for your store. You can choose from several renowned online services as the source of the exchange rates data, specify the frequency of automatic exchange rates updates, and apply a lifting charge.

It is also possible to set manual prices in secondary currencies, including for prices other than the standard WooCommerce ones (regular and sale price). This allows other extensions to not rely on prices determined using exchange rates. For example, in the case of the WooCommerce Subscriptions extension, you can manually set your own sign-up fee in all currencies.

You can also set custom shipping rates in each currency. This allows you to manually set your shipping rates in secondary currencies without relying on the exchange rate. Set your prices independently per currency for shipping amounts that make sense, no matter where your customers are located.

For detailed information, visit our documentation about using multiple currencies on your sites.

Clearing Cart Contents When Language or Currency Changes

When using multiple currencies on your sites you can choose what happens with products in the cart when users switch language or currency.

Cart contents are synchronized by default, or you can reset your cart contents if products aren’t synchronizing correctly. This can happen for complex products like subscriptions and bookings, or products featuring advanced options like table-rate shipping.

For detailed information, visit our documentation about clearing cart contents when language or currency change.

Using WordPress REST API With WooCommerce Multilingual

WooCommerce Multilingual is compatible with the WordPress REST API. Using the REST API, you can now create, read, update, and delete translated WooCommerce content. This includes Products, Categories, Orders, and others.

To learn more about this topic, please visit our WordPress REST API documentation page.

Using WooCommerce Multilingual Hooks

WooCommerce Multilingual has a set of actions and filters that developers can use to make their themes and plugins work smooth in the multilingual environment.

To learn more about this topic, please visit our WCML Hooks Reference documentation page.

Information for WooCommerce Theme Developers

If you are developing your own WooCommerce themes or doing major customizations to existing themes, you should make sure that they work well in multiple languages.

To help you, we’ve prepared a complete tutorial on making WooCommerce themes multilingual and multi-currency ready.

Updated
November 4, 2021