The Issue with Language Translation Plugins

Written by Amit Agarwal on Mar 5, 2009

Someone at the WordCamp asked me this question:

Q: Why do you directly link to Google Translation pages (click the world globe in the header) instead of using a Language Translation plug-in that can serve translated content to visitors much faster via the cache?

As far as I understand, these Language Translation plug-ins for WordPress rely on the online Google Translate service to fetch a translated copy of your blog pages. The results are stored in the MySQL database (or as static HTML files) and these cached results are served to your site visitors from various countries.

Now the big issue here is that the terms of the Google Language API do not permit sites to store translation results in the database for a long time:

You may copy, store, archive, republish or create a database of results returned from the service, in whole or in part, directly or indirectly, except that you may store results in a temporary cache for a period not to exceed Fifteen (15) days solely for the purpose of using those results to carry out a specific user-requested action;

Ben Lisbakken from the Google API team earlier commentated that Google doesn’t mind users storing translations for a very short period but "anything more permanent goes against our TOS and is not OK."

Even if the Language Translations plug-ins of WordPress (and other content management systems like Drupal or Joomla) aren’t using the AJAX API, they still have a different problem and it’s about accessing the Google Translate service via CURL or another "automated method" – see section 5.3:

You agree not to access (or attempt to access) any of the Services by any means other than through the interface that is provided by Google, unless you have been specifically allowed to do so in a separate agreement with Google. You specifically agree not to access (or attempt to access) any of the Services through any automated means (including use of scripts or web crawlers).

These strict but very clear terms are a big reason why I shy away from language plugins but if you different thoughts, please drop a comment.

Subscribe to our Email Newsletter