We’ve just released a minor update for WPML, resolving two cosmetic bugs and improving performance.
This release handles two small bugs for WPML:
- Missing slash at the end of alternatives links for sites using language parameters
- PHP Notice for bbPress pages that link to user profiles
Both of these are not blocking issues, but better fix them than leave as-is.
and, a few issues for WooCommerce Multilingual:
- Compatibility issue with WooCommerce Ajax Cart: cart quantities were not updating
- Compatibility issue with WooCommerce Bookings: incorrect bookings were shown in the backend when toggling between admin languages
- Compatibility issue with the Adventure Tours theme
- Compatibility issue with the Aurum theme
- Compatibility issues with the Composite Products plugin
- Auto-generated slugs on the products translation editor were not made unique
- Sometimes prices with decimals were subtracted 0.01
Faster loading times, especially on busy servers
The more interesting update in this release is an improvement to WPML’s code loading. WPML includes many PHP files with many classes. In this release, we’ve changed the files mapping, so that the right PHP files are loaded instantly without having to search for the correct file.
The performance gain, due to this change, depends on the server. Very fast servers with SSD drives will feel little improvement (because they can find files quickly). Slower servers that have magnetic (regular) drives, especially when highly loaded, will feel a significant improvement for all admin screens.
We’re sorry to disappoint, but profiling this improvement is difficult. If you’re testing it on your local development machine, results will vary. To really see the impact, you need to simulate a busy system with different access to different URLs.
Faster WooCommerce Products admin screens
We profiled a large number of WooCommerce sites, which clients were kind enough to share with us. On all of them, we noticed that the biggest impact from WPML is on the Products admin screen. This is funny, because WPML doesn’t need to do anything on these pages. WooCommerce Multilingual offers its own «Products translation» interface, so there’s no sense wasting CPU time to display translation controls on the native WooCommerce admin screens.
WPML 3.4.1, together with WooCommerce Multilingual 3.8.1 resolve this inefficiency. By default, we’ll not add translation controls to the WooCommerce Products page. This speeds up the admin significantly, without losing any useful functionality. You can still enable these controls if you want them, but it makes much more sense to translate WooCommerece products via WPML->WooCommerce->Products. Our dedicated products translation page includes everything that you need and loads a lot faster.
So, when you need to manage WooCommerce products, you’re not going to pay in performance for having a multilingual site.
Next, faster String Translation
WPML 3.5 will include a set of improvements for String Translation. String Translation in the development version already runs twice faster than in WPML 3.4.1. However, this isn’t all. We’re targeting now the advanced String Translation features, trying to make them run with minimal performance impact. We’re like you to be able to use automatic string registration always and not feel performance loss.
As always, you will receive automatic updates to the WordPress admin for all registered sites. You can register as many sites as you need, for yourself and for your clients. To download manually, log in to your WPML.org account and go to Downloads.
Feedback? Ideas? Suggestion?
Leave your comments and we’ll get back to you.