Nor*_*man 1 typo3 conditional-statements typoscript
我想根据页面的后端布局更改元素的呈现方式.
根据后端布局更改流体样式内容模板的工作方式如下:
[globalVar = TSFE:page|backend_layout = 1][globalVar = TSFE:page|backend_layout = 2]
lib.fluidContent.templateRootPaths.10 = EXT:ds_res/Resources/Private/Templates/ContentTemplates/
[global]
Run Code Online (Sandbox Code Playgroud)
如果是1或2,则使用其他模板.
但是,这仅在BE布局直接设置在页面上而不是从其父级继承时才有效.
如何解决这个问题?
运行TYPO3 7.6.15
谢谢.
在TYPO3 7.5"后端布局"中 - 条件已在Typoscript中使用"pagelayout"进行了简化.例:
page.10 = FLUIDTEMPLATE
page.10 {
file.stdWrap.cObject = CASE
file.stdWrap.cObject {
key.data = pagelayout
default = TEXT
default.value = EXT:sitepackage/Resources/Private/Templates/Home.html
3 = TEXT
3.value = EXT:sitepackage/Resources/Private/Templates/1-col.html
4 = TEXT
4.value = EXT:sitepackage/Resources/Private/Templates/2-col.html
}
}
Run Code Online (Sandbox Code Playgroud)
代替:
field = backend_layout
ifEmpty.data = levelfield:-2,backend_layout_next_level,slide
ifEmpty.ifEmpty = default
Run Code Online (Sandbox Code Playgroud)
也许这也适用于你的条件:
[globalVar = TSFE:page|pagelayout = 1]
Run Code Online (Sandbox Code Playgroud)
但是,您不应使用[xy] -conditions更改已使用的模板文件,并使用上面示例中显示的CASE进行预先更新.顺便说一下,每个数字都是backend_layout的UID.