There was very a similar topic but it’s already closed.
With the default language set to French, and without an “example.fr.txt” inside a folder, Kirby 2.3+ uses the “default” template instead of “example” template. Or pages are not necessarily available in the default language !
How to force Kirby to use dedicated templates every time they are available, as it was before v2.3 ?
A global workaround would be welcome as I have hundreds of pages that stopped to be correctly rendered since update.
In the other topic the issue was that the text file of the default lang had the name example.txt without the language code. If I understand you correctly, it seems like your issue is that you don’t have a text file of the default language at all.
While this is an unsupported configuration (the text file of the default lang must exist), I agree that this is a bug and I have moved this to an issue on GitHub. We will look into this for 2.4.
I have had a similar problem before that some pages are only available in some languages. You can solve this by adding a checkbox to the blueprint that defines whether the current language of the page is translated or not. You can then exclude pages without that property in your templates.
2 functions added to the “templates/default.php” :
echo $page->hasTemplate()
answers : 1
Cheat Sheet : “Checks if the page has its own template or if it uses the default template (return boolean)”.
echo $page->content()->name()
answers : (correct strings)
Cheat Sheet : “Returns the name of the content file without the extension. This is being used to determine the template for the page (return string)”
ps. intendedTemplate() returns “default”, no surprise
If our default language is not English, we can’t use our custom templates in a Kirby multilingual website.
That means we can’t use the Kirby multilingual feature at all.
You make an amazing work with Kirby and I know you can’t fix all the bugs but customers often ask for a multilingual website. So just to know, is this bug will be fixed in a future (close) release or it is not in your priority?