当常量不为空时,如何更改 Typo3 BodyTag

How can I change Typo3 BodyTag, when a constant is not empty

我想在 Body-Tag 中设置一个 class 和一个样式属性。但前提是设置了常量。

常数:

page.theme.bodybackgroundpicture = fileadmin/pageBackground.png

设置:

temp.body = COA
temp.body {
  10 = TEXT
  10.value = {$page.theme.bodybackgroundpicture}
  10.stdWrap.wrap = <body class="background" style="background-image: url(|)">
  10.stdWrap.wrap.override = <body>
  10.stdWrap.wrap.override.ifEmpty = {$page.theme.bodybackgroundpicture}
}

page.bodyTagCObject < temp.body

应该是

<body class="background" style="background-image: url(fileadmin/pageBackground.png)">

或者如果常量为空

<body>

但这不起作用,我的错误在哪里?有谁能够帮助我? 谢谢

它不会工作,因为 .wrap 部分始终是字符串而不是 stdWrap 本身类型,因此它没有覆盖 属性。您可以创建两个具有不同 if 条件的对象

temp.body = COA
temp.body {
  10 = TEXT
  10.value = {$page.theme.bodybackgroundpicture}
  10.stdWrap.wrap = <body class="background" style="background-image: url(|)">
  10.if.isTrue = {$page.theme.bodybackgroundpicture}
  20 = TEXT
  20.value = <body>
  20.if.isFalse = {$page.theme.bodybackgroundpicture}
}

这也应该有效:

10.value =  <body class="background" style="background-image: url({$page.theme.bodybackgroundpicture})">