复杂如果在css类中的typo3流体模板中的条件

时间:2017-06-05 03:25:20

标签: php typo3 fluid-layout typo3-7.6.x typo3-flow

我在以下代码中面临一个问题

<div class="panel-icon {f:if(condition: '{0:panel.id}=={0:123}', then: 'icon-update', else: 'icon-{icon}')}"></div>

目前上面的代码检查panel.id是否等于123然后将icon-update应用于css类别,无论通过{icon}传递的图标是什么

它工作正常,但我的要求是我有3个不同的panel.id,如果这些面板ID中的任何一个已通过,则应该应用icon-update

这些是我尝试的方法,但它们不适合我

方法1

<div class="panel-icon {f:if(condition: '{0:panel.id}=={0:123,0:456,0:789}', then: 'icon-update', else: 'icon-{icon}')}"></div>

方法2

<div class="panel-icon {f:if(condition: '{0:panel.id, 1:panel.id, 2:panel.id}=={0:123, 1:456, 2:789}', then: 'icon-update', else: 'icon-{icon}')}"></div>

我为此寻找一个干净的解决方案,但仍然没有运气。有任何typo3专家来解决这个问题吗?

2 个答案:

答案 0 :(得分:3)

重复问题TYPO3 Fluid complex if conditions - 请查看包含更新示例的答案。

答案 1 :(得分:0)

我自己找到了问题的答案,如果有人在寻找像我这样的解决方案,我会在这里发帖子

<v:if stack="{0:panel.id, 1:'==', 2:'123', 3:'||', 4:panel.id, 5: '==', 6:'456', 7:'||', 8:panel.id, 9:'==', 10:'789'}">
   <f:then><div class="icon icon-update"></div></f:then>
   <f:else><div class="icon icon-{icon}"></div></f:else>
</v:if>

这解决了我的问题