We are a professional company with lots of big clients and have adopted Wordpress 2 years ago to build professionnal grade websites. Being locate in a multiple language country, we have to make our sites bilingual.
We found that using WPML has been the best solution so far to support multiple locales and/or languages. Our problem is at several levels:
WPML supports languages but binds a locale, how do you actually make it work with locales such as fr-CA, en-CA, en-US at the same time without create a strange language code?
Is there a way to put your wordpress in an invariant state? For example, creating a template with __e('something') creates a string in WPML that you'll have to translate in other languages than the default of the your blog. What happens if you have to change your default string to something else? You have to retranslate all your translations and it clutters the interface...
We have a couple of ideas how to achieve this, but we'ld like to know what is the best possible method to achieve this.