跳过导航
63

We found several issues with WPML 3.1 release and we had to take down that version from the downloads page. Instead, there is a Beta version, which includes fixes to all known problems. You will find it in your WPML.org account, under Downloads. Scroll all the way to the bottom, where you can download the CMS Beta Package 3.1.4-b2. This is a ZIP that contains all of WPML’s components.

Before installing, please back up your database. Our own site is currently running this version and we are happy with it.

We will be finishing re-testing tomorrow and will have this as a production release. If you installed WPML 3.1 and your site is stuck due to problems, you can use this beta. Please, please backup your database. If anything goes wrong, it’s easy to go back and we can debug what’s happened.

The biggest news about WPML 3.1 is the new internal languages caching, which offers a performance boost that any site will feel. WPML 3.1 also allows to grant permission to its admin screens to different users and fixes a number of nagging problems.

20% to 50% Less CPU and DB Load

WPML 3.1 uses the same advanced caching techniques for language information, as WordPress uses for posts and taxonomy. WPML now preloads the language information for posts that will appear on the page. It means that many individual queries are collapsed into a single database access. In plain English, the number of queries and the amount of CPU processing goes dramatically down. This improvement is most noticeable on the homepage or blog page, or where ever multiple posts are displayed. Heck, even rendering the standard WordPress menus just got a lot faster.

Are we there yet? Almost. After we eliminated the per-post database calls, other calls became more noticeable. This version of WPML cuts the CPU and processing time by half, for many pages. We are going to continue on this path and gradually optimize more areas in upcoming releases. When you get into it, performance optimization becomes fun!

If you are tracking our Toolset plugins, you might have noticed that a similar performance boost just completed for Views. Now, you can build sites with Views, in a fraction of the time it takes to code them in PHP, and achieve the same performance as you can get with finely optimized PHP. Views and WPML developers worked on this performance optimization together and the results of multilingual Toolset sites are just amazing.

Custom Capabilities for Custom Roles

Did you ever want to create users who can manage translations, but don’t necessarily have full administrator privileges? How about users who will be able to edit strings, or taxonomy?

WPML 3.1 makes this easy, by using custom capabilities. Each admin screen and admin operation in WPML is now linked to a custom capability. Naturally, site admins get all these capabilities by default. You can manually grant these capabilities to other users and roles, allowing them specific access to different parts of WPML.

You can assign these new capabilities using several WordPress plugins. Our own Access plugin lets you define custom roles and grant their capabilities. True, it costs money, but it comes with our guarantee and is also fully integrated with WPML. You will see the different WPML capabilities clearly and accurately and can choose which operations you allow to different role types.

Other WPML 3.1 Features

Besides the big performance optimization and the custom capabilities, WPML 3.1 also includes a number of other features, which may make you happy:

  • When setting a value for “This is a translation of”, and the current content already has translations in other languages, each translation gets properly synchronized, as long as there are no conflicts. In case of conflicts, translation won’t be synchronized, while the current content will be considered as not linked to an original (in line with the old behavior).
  • Categories, tags and taxonomies templates files don’t need to be translated anymore (though you can still create a translated file). Taxonomy templates will follow this hierarchy: ‘{taxonomy}-{lang}-{term_slug}-{lang}.php’, ‘{taxonomy}-{term_slug}-{lang}.php’, ‘{taxonomy}-{lang}-{term_slug}-2.php’, ‘{taxonomy}-{term_slug}-2.php’, ‘{taxonomy}-{lang}.php’, ‘{taxonomy}.php’
  • Administrators can now edit content that have been already sent to translators.
  • Added the ability to set, in the post edit page, an orphan post as source of translated post.

Bugs Closed

  • Admin Strings configured with wpml-config.xml files are properly shown and registered in String Translation
  • Removed max length issue in translation editor: is now possible to send content of any length
  • Taxonomy Translation doesn’t hang anymore on custom hierarchical taxonomies
  • Is now possible to translate content when displaying “All languages”, without facing PHP errors
  • Fixed issues on moderated and spam comments that exceed 999 items
  • Changed “Parsi” to “Farsi” (as it’s more commonly used) and fixed some language translations in Portuguese
  • Deleting attachment from post that are duplicated now deleted the duplicated image as well (if “When deleting a post, delete translations as well” is flagged)
  • Translated static front-page with pagination won’t loose the template anymore when clicking on pages
  • Reactivating WPML after having added content, will properly set the default language to the orphan content
  • SSL support is now properly handled in WPML->Languages and when setting a domain per language
  • Empty categories archives does not redirect to the home page anymore
  • Menu and Footer language switcher now follow all settings in WPML->Languages
  • Post metas are now properly synchronized among duplicated content
  • Fixed a compatibility issue with SlideDeck2 that wasn’t retrieving images
  • Compatibility with WP-Types repeated fields not being properly copied among translations
  • Compatibility issue with bbPress
  • Removed warnings and unneeded HTML elements when String Translation is not installed/active
  • Duplicated content retains the proper status
  • Browser redirect for 2 letters language codes now works as expected
  • Menu synchronization now properly fetches translated items
  • Menu synchronization copy custom items if String Translation is not active, or WPML default languages is different than String Translation language
  • When deleting the original post, the source language of translated content is set to null or to the first available language
  • Updated localized strings
  • Posts losing they relationship with their translations
  • Checks if string is already registered before register string for translation. Fixed because it wasn’t possible to translate plural and singular taxonomy names in Woocommerce Multilingual
  • Fixed error when with hierarchical taxonomies and taxonomies with same names of terms.

Download and Upgrade

As always, the easiest way to get updates for WPML is via our Installer plugin. You can also download WPML manually from your account page.

How do you like this upgrade? Feedback? Ideas? Suggestions? Leave your comments and we’ll get back to you.

How can we make WPML better for you?

Share your thoughts and comments about our plugin, documentation, or videos by booking a Zoom call with Agnes, our Client Advocate. Your feedback matters and helps us improve.

Book a call with Agnes