I am so suprised not find this in the existing feature requests because for me it’s the last missing large piece. Anyway, let’s start with an example:
We want to create a Survey. Every Survey contains 1+ questions, and to every question there are 2+ answers.
Option A: Survey has a field “questions” (Modular content, localised) – which means that the editor must add exactly the same amount of questions and answers for every language.
Option B: Survey has a field “questions” (Multiple Links) – which introduces models which are better suited as blocks, because they are not reused anywhere and make things like deletion of a survey cumbersome.
I propose to allow localised fields within blocks. If blocks are referenced by a localised field, we could simply ignore the translation option – or simpler: we don’t allow blocks with localised fields within localised modular content. I would prefer the first solution, but I see it’s problems.
I’m struggling a bit to follow your example. I don’t understand why in Option A you say that with modular blocks you need to have the same number of questions and aswers for every language. The blocks can be different for every language, so if you use nested blocks you can have a different set of blocks for every translation. Am I missing something here?
For Option B I think there are different tradeoffs, but first I would like to understand better Option A, as I think I’m missing something.
Hey @mat_jack1 sorry for the delay, I was logged in with a customer account and didn’t see your response. Let me try to clarify option A:
In case of a survey I want the same questions and answers no matter the language: Survey → (1…n) Questions → (2…n) Answers. If I use blocks for questions or answers, an editor can’t just translate questions and answers, they need instead copy structure and content and translate from there. If at a latter point somebody changes the number of questions, the translated structure becomes invalid.
The same also applies to a (rather) typical website: editor Max Mustermann (German) creates a new webpage and composes it with components like Hero, Teaser Slider, Feature List, Rich Text etc. Now Géraldine Gaultier (French translator) can’t just go and translate the text, she instead needs to copy the components and translate from there. If Max now decides to get change the teasers (or add new one), he can’t just hand them over to Géraldine to translate, she needs to reconstruct them based on the german version, which is a pain (and a bad workflow). The only way around is to not use blocks but content models for components, which leads to many other problems indeed.
Does that explain the issue?