I’m attempting a bilingual site for the first time in EE3 (as in first time for both bilingual and EE3), but I’m struggling to figure out an efficient way of approaching it. It’s only a single page website, but it’s for a restaurant so it has a lot of food menu content.
Here’s how I crudely have it set up now (very, very early):
”_includes” template group for base layout, “en” group for English (default), “zh” group for Chinese
So the language is switched by just routing to the corresponding URL segments (/en and /zh). The problem with this is in order to avoid having to duplicate layout code I have to just shove everything in the base layout template and use a ton of conditionals to check if the first segment is “zh” or not.
Then the only thing in the “en” and “zh” templates are the section for the food menus which is several channel entries tag. The way I’ve had to set it up is one channel for each menu (not sure it’s the best way, but not really relevant to this topic).
Is there a more efficient way of handling multiple languages so that I don’t have to duplicate structure but also don’t have to use heaps of conditionals?
Have you taken a look at Transcribe? It sounds like it would be a good fit for what you are trying to do.
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.