0
votes

I am having a problem i never expected.

use typo3 10.4.8 with fluidtemplate (previous experiences with typo3 7.6 and no fluid templating)

I have a site with 2 languages, Italian [default] and English [sys_lang_uid = 1]

In my typoscript I set everything necessary to display the correct template and various layouts in the main language, and everything works correctly.

For translations, as last typoscript commands executed I have the following:

[siteLanguage("languageId") == 1]
page.10.templateName = LayoutTemplateENG
page.10.settings.layout = Main_layoutENG
[END]


[page ["uid"] == 1] && [siteLanguage("languageId") == 1]
page.10.settings.layout = Home_layoutENG
[END]

The layoutTemplateENG and the Main_layoutENG are loaded correctly.

The second conditions are evaluated as false, therefore ignored and I always find myself with the Main_layoutENG, even on the homepage, where instead I should have the Home_layoutENG.

I know the translated page actually has another page UID (415 in my case), so I also tried with

[page ["uid"] == 415] && [siteLanguage("languageId") == 1]
page.10.settings.layout = Home_layoutENG
[END]

and finally I tried this alternative solution

[tree.level == 0] && [siteLanguage("languageId") == 1]
page.10.settings.layout = Home_layoutENG
[END]

but nothing to do, I can't get the correct layout loaded on the homepage.

I'm going crazy for it. What am I doing wrong

Thanks

Edit: In addition I tried the conditions one by one(page and language), adding text at the bottom of the page

[siteLanguage("languageId") == 1]
page.103 = TEXT
page.103.value = <br>language 1
[ELSE]
page.103 = TEXT
page.103.value = <br>language 0
[END]
[page ["uid"] == 1]
page.105 = TEXT
page.105.value = <br>Page uid 1
[ELSE]
page.105 = TEXT
page.105.value = <br>Page uid not 1
[END]

and it work as expected

1

1 Answers

1
votes

Combining two conditions no longer works under version TYPO3 10 as it did before.

Old (<= 9.3):

[Condition 1] && [Condition 2]

New (>= 9.4):

[Condition 1 && Condition 2]