How to implement fallback language/site in OctboerCMS 3.x

I try to upgrade a existing october 1 project to october 3. One of the last pices missing is a custom implementation we did in october 1 by adding some custom logic inside of the translate plugin for a fallback cascade.
let’s say we have some languages defined: de, de-si, fr, fr-si where the de-si and fr-si is a simplified form for people that can’t parse complex text.

In my old implementation when the fr-si language was requested I checked if

  • a translation for fr-si is available, if yes → return the fr-si translation
  • if not, check if fr is available, if yes → return the fr translation
  • if fr was not available, fall back to de

I implemented that by having an additional column in the languages table called fallback_id that was self referencing the language ids or null, if I wanted no fallback for this language.

Now that the languages table was removed and the sites feature is in october itself this doesn’t work anymore.

So my question is: Is something described above possible with the current version? (some events?)
If not, would something like this make sense to implement on the site config itself?

Hi @munxar

Multisite does not have a way to use fallback values on a per attribute basis. The translate plugin should still be able to support it using the same or similar custom implementation. You could add fallback_site to the system_site_definitions table, for example.

Hi @daftspunky

Thank you for the clarification.