We are happy with a second beta of WooCommerce Multilingual 3.3. This release adds more juice to multi-currencies, runs smoothly with WordPress 3.9, improves performance and fixes a number of bugs.

Advanced multi-currency options

Multi-currency keeps advancing and lets you run global e-commerce sites even easier.

WCML adds complete currency filtering to the WooCommerce admin. Now, you will be able to easily track in what currencies you sell and produce per-currency reports.

Rounding rules for converted prices

When you set pricing per currency, you can now have WCML auto-convert prices, while keeping elegant prices.

Rounding rules
Rounding rules

The prices that are determined automatically by converting the price in the default currency using the exchange rates of the additional currencies can be rounded to the nearest integer.

Increment for nearest integer:

  • 1454.07 becomes 1454 when this value is 1
  • 1454.07 becomes 1450 when this value is 10
  • 1454.07 becomes 1500 when this value is 100

Autosubtract amount: — the value to be subtracted from the amount obtained previously.

For 1454.07, when the increment for nearest integer is 100 and auto-subtract amount is 1, the resulting amount is 1499.

GUI controls for currency switcher

WooCommerce Multilingual 3.3 lets you customize and display currency switchers without touching any code. Just like WPML’s language switcher, you can now configure the currency switcher.

Currency Switcher GUI
Currency Switcher GUI

Once you enable multi-currencies, you will be able to style the currency switcher and display it as a widget:

Currency switcher widget
Currency switcher widget

And, your currency switcher displays on the site’s front-end, without any coding.

Currency Switcher - front end
Currency Switcher — front end

Performance improvements

We’ve run thorough analysis of all mysql queries that WooCommerce Multilingual uses and, where possible, adjusted the logic in order to minimize the number and their impact on the overall performance.
Some basic examples of areas impacted by these changes :

  • simple product page: about 30% fewer queries
  • variable product page (4 variations): about 20% fewer queries
  • products page (shop page): about 10% fewer queries

Added caching

Added memory caching the calculation of the prices in other currencies than the default one for complex products like variable products with scheduled sale prices.

More efficient way of handling the translation of the category base when generating urls for translations in the language switcher

Instead of switching the locale entirely in order to get the translated category base from the output of the gettext function, load only the necessary mo files directly and read the translation.

Fixed memory issues on the Products tab when we have a large number of products

Avoid loading all products into memory in order to build the pagination.

The performance improvements affect the overall experience when rendering pages related to WooCommerce (products, shop, cart, checkout). Using fewer and faster queries these pages load faster.

Better WooCommerce product sales reports

Before this new version the report for the sales for products were broken down to the different products in the different languages according to the language that the orders were created when the products were purchased. Ultimately the reports needed to be computed for products in general so we corrected this in the new version.
This fix is not entirely supported with older version of WooCommerce (before 2.1)

Sales by product (before WooCommerce Multilingual 3.3)
Sales by product (before WooCommerce Multilingual 3.3)

In WooCommerce Multilingual the reports will always display the products in the current language but they will include all products purchased, regardless of the language of the order.

Sales by product
Sales by product

Other fixes

Admin notifications are now being shown in the admin default language

Orders are placed in different language according to what the clients choose. The admin side will now show coherent messages to the admin user, regardless of the language that orders were placed in.

Fixed bugs related to grouped products

  • Simple product not showing up on front end when translated in a certain order
    In the previous version, after translating a grouped product, the products (translations) that belonged to that group had to be attached to the group manually as they were not added automatically. In the new version, after translating a group the translations of products that belong to it are nested automatically under the translated product.
  • Incomplete titles for product titles in cart and checkout page
    Because of a bug, the products titles were not prefixed by the name of the group that they belonged too like they should have.

    Products with incomplete title
    Products with incomplete title

    Products with complete title
    Products with complete title
  • Product parents (group) not synced between translations of grouped products

Other fixes

  • Attribute Label appearing untranslated in backend order — If you added a variable product to the cart in a secondary language and placed an order, in the backend, the attributes were displayed in the wrong language.
  • Fixed issues with the quick edit functionality
  • Translations of custom attributes that included space characters were not showing on the front end.
  • Deactivated currency still appears if you maintain the default currency for that language to ‘Keep’.

Download and experiment

This beta is only available from your WPML.org account. Login, go to the Downloads page and scroll to the bottom. You’ll see WooCommerce Multilingual 3.3 Beta. Download, install and have fun!