Options to build a bilingual site with Foundry 3 and Alloy

Hi, I’m asking myself this question :face_with_raised_eyebrow: : what are the best options to take in order to build a bilingual site with Foundry 3 and Alloy ? With the possibility to evolve toward a multilingual site. This site should provide a blog, galeries (images and videos), presentation of various topics (with pages change regularly), and a comments section. Does anyone have try or manage a site like it ?

@Bruno Most of what you are suggesting should be pretty simple. There are many tools in Foundry 3 that allow you to divide up content (e.g. tabs, but also others). Thus if one goes to a page there could be 2 tabs: English and Spanish.

The blog pages might be a bit more difficult, but it seems you could take a similar approach: 1 blog post that contains content seperated per language by tabs or other means.

A short list of Foundry tools that might help with this are:

  1. off-canvas
  2. tabs
  3. vertical tabs (in F3?)
  4. scroll stacks with relevant links at top of page for L1, L2, L3 versions
  5. probably some others I’m forgetting. It’s early morning where I am so off-canvas may not work. in addition there are other tools that can complement F3 towards this end: the Content Filter stack from the Source developer comes to mind. But there are others.

The one thing I personally wouldn’t try to do is to create duplicate websites: one entirely in L1 and the other in L2. That could lead to all sorts of problems and be harder for you to maintain (and maintain your sanity). There definitely are websites that do offer a completely different versions for L1, L2, and L3 but those are usually websites with “resources” (i.e. money) behind them to keep things up to date.

1 Like

@mitchellm Hi, thank you very much for your response. You point directly to what I hesitate to. The use of modal with cookie could be an option. But for it to be manageable (you understood that it was for a totally non-profit personal site) I must be able to automate the process a little. This is where I lack an idea at the moment. I ‘m totally agree with you, one site per language can’t be an option.
ADD : Sidekick could be the solution I need if Adam add language selection feature to it. I think there already have all to work as I need (so not too much dev op to do :wink: no ?). @elixirgraphics Here is a great new feature to make business :tada: don’t worry I won’t claim royalties if you update Sidekick this way :+1:

Another possible option is to use anchors and links. That way when someone lands on a page (and could also show at bottom of pagw if desired) a person always sees a button or link to L1 or L2. Clicking the botton/link will take them to one of 2 anchors: where L1 begins or where L2 begins. This should be pretty simple to implement.

I have no idea how easy/hard it is for you to create content in 2 languages. Out of my league there. But once you have a look/style you like then you can duplicate the design for future pages/blog pages.

Hi, thank you for the tip. I didn’t think about anchor. It would help in some case. Translation is not my big problem. It’s the automatisation to put translated texts where they will have to be placed. The second problem is my hesitation between a solution like sidekick (showing different elements related to language, not date or/and time, that’s why I said half joking that Sidekick is almost already to my purpose, it is with minor adaptation I believe) or multilingual approach like RWMLfrom Stacks4stacks. I’m not in a hurry because I just start to prepare my retirement (job in institution, not at my psy office but it will let me much more time to use for me than today, before my complete retirement). If I can launch my project next year (in January as I planned) it will be ok, if it will occur one year later it will be fine too. Thank you again for sharing your thoughts about my question.

There’s a couple of ways to do this, some more elegant than others.

Here are two elegant ones that also play well with SEO and accessibility laws.

If you’re willing to throws some money at it, try Joe Workman’s Agent ($40, Weaver’s Space). This allows you to include paragraph stacks in multiple languages and only display the ones that correspond to the language set in the visitor’s browser (or based on geolocation). You can even have multiple images with alt text in different languages based on these parameters. You can also build a language selection bit that forces Agent to fork up one of the languages and have it default to a language if the visitor is from an unsupported region (for example).

Alternatively, you can use QueryDisplay ($Free, Stacks4Stacks) which allows you to show selected bits of content (like a paragraph stack in a certain language) while hiding others depending on what query is included in the URL. A query in a URL is the bit from the question mark onwards in a URL, like in the following example:


All you then need to do, is make buttons (or a menu) with the different language options and link those to URLs including the specific query. So for example:


…would display only the French language paragraph stacks and images that have French language alt texts.

Do make sure you have at least one language that is shown when no query is included in the URL, or else people (and Google) won;t see content on your site.



@Erwin-Leerentveld Hi, thank you very much for your detailed response. I thought using querydisplay with RWML, I missed Agent and I will take a look. I will try different solutions and combinations of solutions, then will come the difficult moment, choose from several very good products. But arbitration is not for now. My main difficulty is the automation to insert translations as I go along, I hesitate a lot about the tools to choose. AI/not AI, routine in C or not, CMS or not,… well Time will tell… maybe. Thank you again.

@Erwin-Leerentveld has made some great additions!

I don’t know how many languages you are catering for, but using AI (at least right now) would seem pretty tricky. I’ve had pretty good results with some things, but other issues like idiomatic expressions can really get lost. I’m assuming you are only using 2 languages. If so, I’d just tell readers this is an AI translation into whatever is your L2. Just be upfront with them … and people will understand there can be some awkwardness. My guess is you are being very thoughtful and considerate, but also making this harder than it needs to be.

… however, if you use AI and don’t tell readers it’s AI … then at some point that’s going to bite you. Maybe not in a month or two but that day will come. But if you’re up front then the vast majority of folks are very forgiving of potential “weirdness” in the translation process.

It will be a french and english bilingual site. Using AI is to help with time, I’ll check every translation because you’ re right AI make a lot of mistakes. I’m not sure I make it harder than needed, maybe too perfectionnist (linguist in addition to being a psychologist) but it’s my inner structure (not a psychologist by chance :grin:). Translation will take me time (but I like it), I would have to save time on something else hence the automation sought for what can be. Again, thank you very much for your participation in this reflection.

Hi, 3 days without any remark. So a last question : what about .po with PHP ? Is it manageable in a “no code” solution (RW/Stacks/Foundry/Alloy) ?