将复杂的 TypoScript 条件迁移到 10 LTS / 11 LTS

Migrate complex TypoScript condition to 10 LTS / 11 LTS

我尝试迁移以下条件但没有成功:

[globalVar = GP:tx_news_pi1|news > 0] || [globalVar = GP:tx_news_pi1|news_preview > 0] && [PIDinRootline = 123, 456]

我试过类似的方法,但 none 我的尝试似乎奏效了:

[traverse(request.getQueryParams(), 'tx_news_pi1/news') > 0  || traverse(request.getQueryParams(), 'tx_news_pi1/news_preview') > 0] && [123 in tree.rootLineIds || 456 in tree.rootLineIds]

我如何在 Symfony 表达式中编写如此复杂的条件 Language/TypoScript?

我觉得你需要把完整的条件写成一个方括号表达式:

[traverse(request.getQueryParams(), 'tx_news_pi1/news') > 0 || traverse(request.getQueryParams(), 'tx_news_pi1/news_preview') > 0] && (123 in tree.rootLineIds || 456 in tree.rootLineIds)]