想要更改具有 if/then 条件的徽标

Want to change a logo with an if/then condition

我想 select 徽标取决于页面的复选框 属性 我已通过扩展添加。转储变量时,变量 selectcompany 正确显示。

我是 运行 Typo3 8 LTS。

obj.logo {
  <f:if condition="{field:selectcompany}==1">
    <f:then>
      file = fileadmin/template/private/images/Logo1.png
    </f:then>
    <f:else>
      file = fileadmin/template/private/images/Logo0.png
    </f:else>
  </f:if>    
}

虽然变量设置正确,但总是显示Logo0.png。当变量设置为 1 时,我期望 Logo1.png.

如果这是 TypoScript 片段,您不能在那里填写 Fluid 条件,而必须使用 if 条件的 TypoScript 变体。

https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/Functions/If.html

在 TypoScript 上,可以使用条件(TYPO3 9.5.x 语法):

[page["selectcompany"] == 1]
  obj.logo.file= fileadmin/Images/logo1.png 
[GLOBAL]

否则,您可以使用流体模板解决;它应该只是:

  <f:if condition="{data.selectcompany}">
    <f:then>
      <f:image src="fileadmin/template/private/images/Logo1.png" alt="" />  
    </f:then>
    <f:else>
      <f:image src="fileadmin/template/private/images/Logo0.png" alt="" />  
    </f:else>
  </f:if> 

我使用了 <f:image>,但我想您也可以使用普通的 <img> 标签。