Copy and dimensions fallback (tricky) question

Hi guys!

Another tricky question. Maybe anyone had same issue or have solution. I our projects we use fallback. So we have this fabulous thing for content. But now I came across a problem. My situation is this.

  1. I have node creation handler in which I create document node from template.
  2. After that I create variants for all other dimensions. That satisfies me because top part of page should be fetch from fall back and user should override it.
  3. But the next step makes me a problem. Let’s say the lower part of the page. I need to copy elements per language there, so I would like to avoid fallback in this part. But every time I add an element in live + default language it appears to me as a fallback in other languages.

I tried to set it to hidden, but I don’t want to show it to the user even if it is hidden. Setting to removed causes deletion but restores the fallback node from the default language

Has anyone ever had a similar problem to solve?
The only way is to overwrite the fallback elements?
Is it possible to stop fallback for specific path or node?
Or maybe there is any extension for it?

Hi @pskwira,

as far as i know, and as you already noticed, you can’t remove the nodes.

One approach that comes to my mind: Simply add a new boolean property to all your nodes (let’s call it noFallback for example) by extending Neos.Neos:Node (or Neos.Neos:Content). Then do sth. like this:

prototype(Neos.Neos:ContentCollectionRenderer) {
    prototype(Neos.Neos:ContentCase) {
        @if.showFallback = ${!q(node).property('noFallback')}

This should hide your nodes even in the editing area. If you want to see that node again, you need to use the structure tree and update the fallback value in the sidebar again.

Hope this helps.

Thanks @benjamink for the answer. It solves my problem partially. It won’t render those elements in page content. But editor will see them and also they will be as a fallback in Neos.