WPML 2.7 greatly focuses on performance and robustness of existing features. After upgrading our own site, we see a very significant improvement in CPU load and site speed.
In this release, we’ve set our focus on making WPML run faster. For this, we gathered a number of large databases, profiled WPML’s code and found bottlenecks. Then, we cleared them
The biggest performance hog was in the String Translation. Turns out that some internal caching for function output managed to remove up to 80% of the calls to CPU-intensive functions. If your site includes a large number of strings, like our does, you should feel an immediate improvement after you upgrade.
We also found that some DB queries are running without an index. It’s not too bad if you have a small database, but for large databases (again, like our), the performance boost is very noticeable. This index also makes your DB more responsive and use the disk less.
Updated Menu Sync
WPML’s Menu Sync functionality got a big push in this release. It can now cope with most anything you do in the menu system. Previous versions of WPML could not synchronize menus when their order had changed. This version handles all menu operations and manages to keep the menus in different languages in sync.
We’ve added a new column to WPML’s language table, which holds the language name for href tags. You can view it when you go to WPML->Languages->Edit Languages. In the language editing page, you will see a new column called “Language tag“. That’s the language name that WPML uses when it links to translations.
Having a separate entry lets you specify the exact language code that Google wants to see. We’ve already populated that column with correct defaults, according to Google’s language naming convention. If you need, you can always edit it for your own site.
And, we managed to clean a number of bugs. Here are the highlights:
- _ex() not showing the translation on the front end
- Custom post type translated slugs didn’t work on archive pages in WPML’s language switcher
- Several PHP notices and warnings
- Fixed the layout of the translation dashboard for RTL languages
- Fixed the alignment of the language navigation bar in RTL
- Types custom fields were missing in Custom Fields Translation section
- Tags error instead of 404 on secondary language domain
- WPML Media Featured image duplication error
As always, the recommended way to install and update WPML is by using our Installer plugin. Installer will let you get WPML updates directly to your WordPress admin.
You can always download WPML manually from your account.