WordPress is monoglot

When making this website I discovered how difficult is to blog with WordPress in more than one language. There is no native support and the plugins or possible hacks can’t provide all needed features.

I was looking for the following characteristics:

  • Easy translation of posts, pages, tags, categories and template;
  • Automatic generation of feeds in different languages;
  • Detection of language through browser or preferred language through cookie;
  • Different permanent link for each language.

But it was not a surprise when I didn’t find a complete solution. I had the same problem with Joomla. A good question is: Why the community doesn’t give much attention to this?

In my search I found the plugins below (with last update and heritage):

multilanguage-wordpress-plugins

Before choosing one of them, I learned how they store the content in order to avoid headaches if I need to migrate in the future.

Below how they save the information:

I choose qTranslate because it has a friendly interface, a good source code organization, an active forum and because of its parentage with Polyglot and xLanguage. This way it’s easy for me to modify the sources and I’m not going to have problems if some day I choose to move to xLanguage, for example.

But it has lots of deficiencies like the impossibility to preview archived posts, the permanent links in one language only, the markups of identification showing around the tags and categories on admin etc. Nevertheless, it solves well the problem until I find a better solution.

-
Update 10/02/08:

My first thought was to install two separate blogs and keep one of them as subdomain. But the maintenance of two code bases kept me away from this idea. Kelter on comments provided a link to a clever hack for wp-config.php to use only one WordPress installation.  It’s not a perfect solution because all texts of template need to be inside a .mo file, you will have a copy of all tables for each language, no shared comments etc. However comparing with the features of available plugins, it’s a good option.

-
Cited plugins: