基于语言的 TypoScript 条件 - TYPO3 版本 9

TypoScript condition based on language - TYPO3 version 9

我目前正在将网站从版本 7 升级到版本 9。

我有一个小的 TypoScript 对象,它根据所选的页面语言显示不同的内容:

lib.myTSO = TEXT
lib.myTSO.value (
    <p>Hello World</p>
)
[globalVar = GP:L =1]
    lib.myTSO = TEXT
    lib.myTSO.value (
        <p>Hello World in a different language</p>
    )
[global]

这在版本 7 和 8 中有效,但在版本 9 中似乎不再有效。我假设它是我调用语言变量的方式?

再次感谢,

匹配您在站点配置中设置的语言环境应该有效:

[siteLanguage("locale") == "en_US.UTF-8"]
   lib.myTSO = TEXT
   lib.myTSO.value (
        <p>Hello World in a different language</p>
    )
[global]

参考: https://docs.typo3.org/typo3cms/CoreApiReference/ApiOverview/SiteHandling/UseSiteInConditions.html

从 TYPO3 9.5.1 开始,这似乎仅在常量中有效

[siteLanguage = locale = en_US.UTF-8]
constantFoo = Bar
[global]

如果你想使用语言uid,这也可以:

[siteLanguage("languageId") == 1]
 // 
[global]