
A while back I created a website for Straathof manegebodems (horse arena footing). One RFC stated multilingual support, not (yet) a default WordPress feature. After some research, broken plugins and messing up my test environment I found a plugin fitting my clients needs: the Language Switcher. (There are some different approaches for bi-/multilingual wordpress support, please visit the WordPress codex to determine yours)
After activation of the plugin on the settings page in the admin panel you will find options for: default language, replacement text for missing translations, time and date format etc.
The language switcher works from within the post, page etc. You simply place a [lang_xx] (xx must be replaced with an international code) tag in your post with matching [/lang_xx] at the end and the plugin takes care of the rest. A part of a post could look like this:
[lang_en]This is an English text[/lang_en]
[lang_nl]Dit is een Nederlandse tekst[/lang_nl]
This is a text shown for all languages.
With the following code switch I added some special features within my theme:
global $langswitch_lang_pref;
if( $langswitch_lang_pref == 'nl' )
...
For language switching you could use the widgets option, I chose to implement this feature myself by adding the flag images with the following coded url:
/post->post_name ?>/langswitch_lang/en/">
The $wp_query->post->post_name part makes sure your visitor stays on the same page while switching a language.
In short, a perfect basic plugin, and it surprised me for even translating page and post titles. I’ve probably used only 50% of all features packed in this plugin, because I read the plugin is also capable of translating the theme etc. Visit the plugin website for a very detailed tutorial.