Photo by mykreeve
From my point of view the internet has became a really crowded place. No more “build it and they will come” mentality. Today’s internet business have started to compete for every single user and the need to address all potential users is more important then ever.
This is where multilingual web-sites and web-applications come into place. Limiting your business to a single language or expanding it to target users from all over the world could mean the difference between failure and success.
The big players on the internet seem to get this. Google, Microsoft, Yahoo and many more offer they services in numerous languages. The introduction of tools like Google Language Tools, Yahoo! Babel Fish and similar ones have opened the multilingual doors for the masses. You can now view an entire web-page in your native language at the click of the mouse.
However things are not quite there! Even though the automated translation of a web-site is acceptable for getting a general idea of the content, mistakes are common and things can and are misinterpreted between languages.
The theory behind multilingual web-design
Implementing a static HTML web-site in multiple languages is quite simple. Just duplicate the content in a /lang1/ folder and translate the content. For web-sites that don’t need to be updated very often this a rather good solution, giving you a lot of flexibility. This type of multilingual implementation has been around from the birth of the internet.
With the appearance of dynamic web-site things started to get complicated. Content became separated from HTML to some extent and databases transformed the way we store data. To translate every piece of information in a modern web-site, things just had to be implemented differently. The old way of copy and paste in a different folder is no longer an option. Extra work needed to manage two, three or even more dynamic systems (one for each language) just isn’t justified. As a result complex implementations of the solution transformed the way we think about multilingual web-sites.
There are quite a few options out there for WordPress users to translate the content of their blogs or web-pages. I’ll first make a list of the different implementations and them try and talk more about each one in particular.
- The “Two-Tree” concept ( we use “language” categories )
- Automated translation (using google languages or babelfish)
- Manual translation using plugins ( I could only find one really good plugin that can do that so we’ll look into that)
- Semi-automated payed translation. (this is rather an ingenious concept and I believe the people who created the service will have a lot to gain from it)
All these solutions have both advantages and disadvantages. From my experience a multilingual web-site is an added complication with absolutely no easy way out. There are just so many things that could go wrong: encoding, special characters, the content to maintain increases with every extra lanuage, not everything can be easily translated (anything other then the post body and title needs extra steps to translate), communication between the site admin and the translators introduces a lot of undesired lag into the project and let’s not forget the big bill from a professional translator.
But as I said in the beginning all this effort could be well worth. Even if you are promoting a service or product that is difficult to ship / commercialize / support abroad the extra traffic alone could be worth a lot. A few trackbacks could significantly improve your google ranking in search that would in turn bring you even more traffic. The way business is done on the internet is that of a Three Way Market and every bit of extra traffic helps.
1. The “Two-Tree” concept
This is the “old” way to do it. This does not imply “old-fashioned” as if this is an inferior way to the new possibility! It just fits another purpose.
Both lang1 and lang2 web-sites are part of the same wordpress installation.
First you would need to create two pages: en and ro. Then create the rest of the pages for every other page you want. Our en page will be the home page for English and ro will be the home page for Romanian. When we create a new page, for example the Contact page, will select the page parent to be en. Repeat this for every page and language and by no time you’ll have a proper multilingual structure!
The listing in the edit pages tab inside wordpress would look something like this:
Next we’ll implement a similar structure for our categories. Two “en” and “ro” categories will hold out translated posts. A custom made theme would be required to display the right menus and content for each language in particular.
This might not be a really efficient way to translate one’s web-blog but it dosen’t require any plugins. Is quite SEO friendly but unless you make serious changes to the way your theme manages the menus it won’t be user friendly.
2. Automated translation (using google languages or babelfish)
This is one type of translation that is just great for blogs. It’s really simple to use, free, fast to implement (don’t have to send anything to a translator). Chances are your non English users will use these services directly from Google or Yahoo so this saves them quite a few clicks which is always a good thing.
The obvious disadvantage is the quality of the translation. By no means this should be used for a respectable business. While one can understand the meaning and general feeling of the article, even the smallest misspell in the initial language will render this service useless, there are grammar mistakes and the words are not always translated in their intended meaning (based on context).
There are quite a few plugins available for wordpress that automatically translate your content but the one I used and recommend is Global Translator.
With Global Translator plugin for WordPress one can:
- translate the blog in 34 languages
- provide the translations by using Google Translation Engine, Babel Fish, Promt or FreeTranslations.com
- use the permalinks by adding the language code at the beginning of all your URI. For example the english version on www.domain.com/mycategory/mypost will be automatically transformed in www.domain.com/en/mycategory/mypost
- use the built in Fast Caching System. Drastically reduction of the risk of temporarily ban from translation engines.
- you can easily customize the appearance of the translation bar
As you can see you can do a lot with Global Translator. It also translates the front-end WordPress interface (words like Posts, Pages, Read More, etc). Again my recommendation is to use this plugin for your blog if you are trying to reach a larger audience but try and don’t use it for large web-sites unless you know what you are doing (due to the quality of the translation).
3. Manual translation using plugins
Translating your wordpress installation to the last word could be a really hard thing to do, especially for non-technical wordpress users. Although a blog has a really straight forward structure and dosen’t pose so many problems, developing a multilingual web-site using wordpress is a different story all together. A web-site can have different widgets on different pages, might use plugins that have an front-end interface that is not translatable and will need to have at least a contact form that will be available in several languages.
Solutions? One thing is certain: it’s not impossible 🙂 . Although it might be somewhat unintuitive at first one can create a fully translated web-site (for a blog this is quite easy to do).
By unintuitive I mean users might have to use <!–:en–><!–:–> tags for widget translation and even template changes in order to get the entire web-site translated.
However there are good new. The latest version of the qTranslate plugin has a really easy to use interface when translating post and pages. They offer One-Click-Switching between the languages. One can change the language as easy as switching between Visual and HTML editors!
Other options that make qTranslate such a great plugin includes:
- No more for adding special characters or strings to separate your multilingual texts! – qTranslate will handle them almost everywhere for you
- No need to edit the plugin file to get your language working! – Use the comfortable and intuitive Configuration Page
- Comes with many languages already built in! – English, German, Simplified Chinese and a lot of others
- Add your language in seconds! – Thanks to the simplistic Configuration Page
- Multilingual dates out of the box – Translates dates and time for you.
- Improved Installation! – No need to manually search and upload Gettext Databases/.mo files anymore
- Multilingual Text in Templates without the need to change Gettext Databases/.mo files – Use Language Tags with Gettext!
- Choose one of 3 Modes to make your URLs pretty and SEO-friendly. – The everywhere compatible
?lang=en, simple and beautiful
/en/foo/or nice and neat
- One language per URL – Users and SEO will thank you for not mixing content.
From all these options a few are really useful, particularly the SEO-friendly URLs and the automatic download of Gettext Database/.mo files that you should have otherwise downloaded then and then uploaded them to your WordPress installation.
There is a really useful forum available in case you need help with the plugin or have suggestions. Qian Qin ( the author ) responds fast to enquirers and there’s quite a big community around it.
4.Semi-automated payed translation
This is a intriguing idea. You install the Icanlocalize plugin and then:
- Their system fetches posts and pages that require translation (new or updated).
- Professional translators do the translation. The translation retains all formating, embedded objects, links, etc.
- Translation is saved on WordPress. It can be saved on the original blog or on an independent blog.
- Comments are moderated in your own language. You can reply in your language and they’ll translate it instantly.
Sound good right? But wait there’s even more! You can even have a Multi-lingual contact form, where your visitors can contact you in their language and you can respond in your language.
If you have the cash to invest in a ongoing translation of your articles in different languages this plugin is for you. I haven’t personally tested their system and don’t know what is the quality of the translation (they are using payed translators so by all means it will be incomparable better then a automated translation).
The pricing is… well… compared to Romanian translators, expensive. They have a quote for text translation so you can paste your text and receive a instant price. For a word count of 470 I received a cost to translate per language of 32.9 USD. This means that for a larger article you could end up paying over 100$ per/language/article. If this is a good price for you then this service is the way to go!
Multilingual web-sites are the least an annoyance and can transform in a nightmare if you try to rush things up ( I think I lost an entire day on a past project because two persons worked on it with two different editors and different encoding and every special character was displayed as question mark or a square! ).
Luckily open source has evolved quite a lot in the past years and now we can make use of out of the box solutions that really make your life easy. Even if more powerful CMS’s like Joomla! or Drupal have advanced multilingual solutions, WordPress is not far behind and I hope this article can bring the reader a bit closer to solving it’s multilingual problems.
Disclaimer: I have no affiliation with iCanLocalize.com and do not receive commissions on sales.
Subscribe to get early access
to new plugins, discounts and brief updates about what's new with Cozmoslabs!