warningThis is going to be a particularly technical and boring post, so don’t build too high expectations…

We’ve just released WPML 1.0.2. This version doesn’t bring any new features, but it does provide important updates to existing sites and to new sites using WPML. What we’ve done is make the translation database resilient to errors. As a result, it’s much less likely for things to break or misbehave.

Why would things break?

Some times, creating posts and pages may fail. It’s not very likely, but still possible (and it happens). This can be due to communication errors, stale sessions, Javascript problems, Google Gears problem, etc.

These things are not supposed to happen, but they sometimes do. Until now, every time such a problem occurred, problematic entries could have been written to our language tables. As a result, it would have been impossible to later change the post’s language. This is what you would call a design-bug.

Well, we’ve been able to collect quite a lot of data from many people using WPML and identify the places where there problems are caused. WPML now avoids creating database inconsistencies in both the plugin code itself and on the database level. This means, it’s going to be very complicated to break things from now on.

When you update WPML, it will automatically clean up your database and make sure that the language information is consistent. From that point, it can’t go wrong again, as the database itself will guarantee consistency.

A new troubleshooting page

We’ve already added a new section to WPML, which shows the contents of its language tables. Normally, no one needs this features, but it can come in very handy if things go wrong.

This is something that took a lot of debating. On one hand, it provides valuable data to anyone who needs help. On the other hand, it’s pretty scary to see all these details. We figured that since most WPML users are very advanced, we can take the risk without causing mass panic.

Fixed compatibility with advanced themes

WPML’s language switcher didn’t work properly in some themes (like Arras). It turns out that these themes modify variables that WordPress sets, confusing the language switcher. WPML now makes a copy of everything it needs before the theme functions can kick in. This way, no matter what the theme does, WPML doesn’t break.

This has been a problem for both the built in language switcher and custom language switcher. It happened mostly when viewing posts.

2 Responses to “WPML 1.0.2 with database improvements”

  1. I’ve updated your plugin (1.0.3) on 2 sessions of WP (2.8) and on both I had problems.
    On the first I don’t see categories. on the 2nd the plugin failed installation.

    Bad work!

    • Jan, sorry for the problems you’re experiencing. Please feel free to use the forum to address each of them and we’ll do our best to assist.