Yes, it was over four years since the first version of Transposh for wordpress was released. And indeed, we have come a very long way.

Transposh is being used by thousands of sites all over the web, and we have many happy users (and a few less happy ones 🙂 ).

This version, 0.9.2, is not really what we expected to have by now, after four years we would have expected that a version one (maybe even two) will already have been released. But apparently, life does rarely proceed as you plan it to.

The title of this posts actually refers to a new behaviour of our parser, when we used to encounter an &nbsp; (which should be a non-breaking space) we actually broke the phrase into two, which is rather the exact opposite of what things should have been. So hopefully this is now fixed, and we’ll no longer break!

Other changes include:

Basic support for Woocommerce integration

Override the case when other plugins or themes cause the process_page to be called prematurely

Fix a nasty bug when the same translation appeared in a paragraph more than once

Bing have added two languages

Fix the bug reported by dserber disallowing language selection on post where translate_on_publish was disabled

It has been three years (and three days, and thirty three hours) since the first version of Transposh plugin has been aired on the wordpress.org plugin repository.

Time surely flies.

This has been the first leap year (29th February) and a real leap year for Transposh. The plugin has been downloaded from the repository over 50,000 times this year and has made a steady growth of features and total number of languages supported. And today with the addition of Hmong Daw we are the first plugin to support a total number of 66 idioma.

This was a really interesting (as in, have an interesting life) year for the automatic translation industry and plugins, where Google has nearly dropped their API support (only to switch to a pay model) while Bing imposed new limits. Transposh has successfully overcame those changes, while other plugins did not survive.

What does the future holds for Transposh? We are slowly boiling some new stuff, working on our vision to improve website translation, when things will be ready – they will be out. Meanwhile, your continued support is important to us, sometimes a simple email with “your plugin is great” drives us to continue. So if you believe we are doing well, drop us a line, if you think we should improve things, drop us a note, and if you think that we suck, we fail to understand why you have read this message up to this point 😉

Wishing ourselves a great 4th year, maybe it will end with a bigger cake 🙂

Well ahead of the deadline posed by Google Translate API to stop working, we were finally able to compile this new release. This one followed a long period of problems that were presented by the older version, mainly because of the fact that Google decided to pose limitations on usage before their deadline which caused the previous versions support requests to surge to new heights. The Google change also triggered an API limit in the Bing translation API, since users were switching engines, which overloaded the Transposh hard coded API key for Bing.

However, we survived this period to provide you with our latest and greatest version. This version fixes these problems be providing a bypass (Proxy for Google and temp keys for MSN) and it also allows you to use your own key directly (thanks to Randy fromspyware help centerfor providing us with his key for testing) which will take precedence over those other methods. While doing this we were able to dramatically improve the infrastructure of the plugin, changing the way AJAX calls were performed to a method that is native to WordPress (e.g. if your admin page works, it should probably work as well). While doing that we were able to reduce javascript code needed for the backend while allowing the translate all feature to work much faster (and supporting Apertium too!).

At this point we had a solid version, which seemed like a good thing to release, but no, we had to have some other features in, so we finally decided to tackle the issue of multiple widgets support (and title selection too, yippee!). Seems quite straight forward? but no, this caused a major rewrite of our widget infrastructure as well. Actually improving it quite drastically with changing the way css was added, and the way the widgets notified the servers of change in language (we now avoid a useless POST call to the server). While writing that we were lucky enough to stumble upon a PHP5.3 to PHP5.2 incompatibility issue with a set of other problems which held our release back another week. We want to thank the many users that have put up with our beta releases and helped us find problems that were hidden under layers of code and complexity.

We also took this opportunity to change our terms slightly, if you are displaying Google ads from AdSense on your translated pages, we will take 1/1000 of that space for use with our own adsense code, so if Transposh is helping you generate a revenue of $10K you will be buying us coffee! So thanks! To clarify things a bit, we don’t create additional ad space on your page, and we won’t insert any ads or change your layout, if you have no ads, we do nothing. If you think that this is asking too much, you may simply delete our plugin, whistle a soft tune, and be on your way. If you want a commercial license, we don’t sell them yet, but they’ll probably cost more.

Other changes to this version include:

Added Catalan and Hindi support for Bing – speaks for itself.

Dropdown widget improved css – it actually looks much better now.

Support for Memcached – if APC and other opcode caches were too much for you, now you may use memcached and have a lot of fun.

This time we are joined by nobody else than Matt Mullenweg, the creator of the WordPress platform.

In the following completely fake interview, Matt will help us all understand what is new in 0.6.4:

Ofer: Hello Matt, how are you today?Matt: I have never been so excited about a point 0.01 release of a plugin before!Ofer: Why is that?Matt: I think that you are finally getting the spirit of wordpress in this releaseOfer: Am I?Matt: Yes, you are finally integrating with the platform instead of hacking around it, I really like the fact that you finally took the time and made your plugin interface and administration pages translatable, and since you are that good, you get a free blog!Ofer: Gee, thanks! now how will I get other people to make translations of my plugin?Matt: Just ask your users to do that, I am sure you’ll give them credit.Ofer: Tell them the whole thing aboutpoedit and stuff?Matt: Come on, as I am always saying, there’s a plugin for that! And you should probably know since you translated it yourself and contributed some minor fixes.Ofer: You meancodestyling localization?Matt: Yes, that’s the one, anyone can use it. But I have a question for youOfer: For me?Matt: Yes, why didn’t you use Transposh for doing that?Ofer: Didn’t really see the reason, as there’s already a great plugin for it, why replicate?Matt: I see that you are finally getting it.Ofer: Getting what?Matt: The spirit of wordpress, sharing, caring, open source, and free love.Ofer: I sure hope so, thank you so much for being with us.Matt: Thank you, next time, please interview me on a major feature, if I had to do fake interviews for every minor plugin release in wordpress, I’ll never have free time to actually improve wordpress and come to wordcamps.Ofer: Will take notice, thanks again!

Well, thanks Matt for joining us, some features also added to this version is the Latin translation added (with google translation support), three new languages added to Bing translate. The ability to disable the gettext integration where it causes problems, with some other fixes.

This new version has two major changes and lots of bug fixes included.

The most important change is the integration of the plugin with the WordPress GetText system, which is the way WordPress (and some themes and plugins) provide localized versions of themselves. This is done with a couple of files (called .po/.mo files because of their extensions) that includes a list of translated strings that that software include.

What Transposh now does is to utilize said files, so if you have the files that translate WordPress to Spanish, they will take precedence and Transposh will use the files to make the translation of the interface to Spanish. Why is this better? there are a few reasons, one is that sometimes it enables translations where they were previously impossible, another is that the translation is human based and deemed more accurate, and the last is that it can clear ambiguity especially in short strings such as month names and day abbreviations.How to get the .po/.mo files, and more information about how this work can be found athttp://trac.transposh.org/wiki/UsingGetText.

This feature also includes a rewrite of the in-memory caching system of the plugin, which now supportscache i baccaratin addition to the previous versionsAPCsupport. This version uses a more compact representation of the data which improves performance and reduce memory usage.

More fixes in this version:

Tags from the tag cloud will now be translated with mass translate

Fix for the sneaky “not a valid plugin header” issue, if you get “Default” listed twice in your widget selection settings, please delete the widgets/tpw_deafult.php file

Fix for MS translate tendency to add an extra space to translation result

Fixed bug with list with flags css widget preventing the view of flags

We have also changed this site layout a bit so you can see the development feed and changes in a more real time fashion.

Waiting for your feedbacks on this version.

Update: A bug was discovered when using the plugin without caching, if you have repeat translations, or you can’t see translations previously made, please reinstall the plugin from wordpress.org, the plugin there is now fixed. Danki Nicholasfor reporting this.