簡體   English   中英

在 TypoScript 中,如果滿足 c1&c2&c3 條件,如何在菜單項旁邊顯示“新建”?

[英]In TypoScript, how to display a 'New' beside a menu item if c1&c2&c3 conditions are fulfilled?

這是typo3 7.6.27中的代碼:

2.NO {
    after = &nbsp;<span class="nouveau">New</span>
    after.if.value.data = date:U
    after.if.isGreaterThan.data = field:f1
    after.if.value.data = field:f2
    after.if.isGreaterThan.data = field:f1
    after.if.value.data = date:U
    after.if.isGreaterThan.data = field:f2
}

您不能將多個條件添加到一個if函數中。
請記住:typoscript 在被評估之前將被轉移到一個 php 數組中。

在你的例子中,你的第二個條件覆蓋了第一個,第三個覆蓋了之前的任何一個。

Typoscript 沒有用於邏輯運算符的內置機制,因此您需要解決方法,例如userfunc或級聯stdWrap

所以一個可能的解決方案可能是:

2.NO {
    after = &nbsp;<span class="nouveau">New</span>
    after.if.value.data = date:U
    after.if.isGreaterThan.data = field:f1
    after.stdWrap.if.value.data = field:f2
    after.stdWrap.if.isGreaterThan.data = field:f1
    after.stdWrap.stdWrap.if.value.data = date:U
    after.stdWrap.stdWrap.if.isGreaterThan.data = field:f2
}

或者您在更新到當前版本的 TYPO3 后使用菜單處理器和流體,如果您仍然使用已停止支持兩年的 TYPO3 7.6.27,這將非常出色。 (7.6 ELTS 是 7.6.40)


除此之外,如果我想用類似的條件塊執行 else 以顯示“已更新”(如果已更新),是否可能?

排版條件功能中沒有else
您可以使用overrideifempty但在這種情況下,我建議在after使用COA

2.NO {
   after.cObject = COA
   after.cObject {
       10 = TEXT
       10.value = &nbsp;<span class="nouveau">New</span>
       10 {
           if.value.data = date:U
           if.isGreaterThan.data = field:f1
           stdWrap {
               if.value.data = field:f2
               if.isGreaterThan.data = field:f1
               stdWrap {
                   if.value.data = date:U
                   if.isGreaterThan.data = field:f2
               }
           }
       }
       20 = TEXT
       20.value = &nbsp;<span class="update">Updated</span>
       20 {
           if.value.data = date:U
           if.is???Than.data = field:f1
           stdWrap {
               if.value.data = field:f2
               if.isG???Than.data = field:f1
               stdWrap {
                   if.value.data = date:U
                   if.isG???Than.data = field:f2
               }
           }
       }
    }
}

以適當的條件為20 .

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM