Seems there is no good enough solution, I have built this my own client-rendered solution. My solution provide:
I open my source code above. I think this is some foundamatal infrastrcuture for an ec website, that's shameful to charge on this.
Hope these code can help some people.
But I think the perfect solution is that Shopify can offer a server-rendered method, not client rendered.
It seems like I ended-up on this thread for the same reason as all of you. Shopify doesn't really seem to recognize that this is the 21st century. I currently have an OpenCart site and wanted to see if I could setup a Shopify site to replace it. Days later, I have finally given up on Shopify. I am completely astounded that there isn't an easy, built-in function to have all the shop/theme switch from one language to another from a drop-down menu. Same for the currency. This is all easily done and free with OpenCart... which is a custom online shop solution that requires some technical know-how to install and configure.
Shopify support even suggest plug-ins from third-parties to get a multi-lingual version of your shop/theme! You'd think that after years of getting asked the same thing and forcing their customers to buy a third-party app and then MANUALLY translate all their theme, they'd have understood the need to integrate all this into their product. But no! Why do that when you can simply collect a commission from vendors who provide half-baked solutions I guess...
This is pathetic and is not worthy of the century we live in. The board of directors at Shopify need to be replaced by younger people who understand today's reality. Even Americans should know that not everyone on this planet speaks the same language... although it is a difficult concept to grasp for some.
Only a simple, integrated option that provides full translations of all in-house themes in most major languages will do here. Shopify needs to have a language page where you decide what language(s) you want your shop to be displayed in (and what currency to display for each language) and select where to display the drop-down menu. Then we, as store owners, can seek translation services to help-out in translating our own content (nothing that is not part of the Shopify interface). That is where Shopify can collect some commission to get you in touch with profesionnal translators who will do translations of your content (through an in-house interface so that translations are uploaded to the customer's site by the translator).
Anything else is unnaceptable. And that's why I am moving on to look for a better platform. Maybe someone as already understood all of this an I can simply pay for a fully functionnal solution. If I pay for something, it better be a complete and easily usable solution... not a half-baked, good-luck-buddy scheme.
Sorry Shopify, but you have miserably failed on that aspect and you are certainly not loosing only one client to this. Open-up to the world and come into the 21st century.
Our website is currently under developement, so I guess there is no site use this yet.
But since I opened the source code, you can use it and test it. if you find bugs or something can make the code better, any suggestion or comment is very welcome, I can make some modifications to make it better.