【问题标题】:TYPO3 condition Symfony Expression language on pluginTYPO3 插件上的条件 Symfony 表达式语言
【发布时间】:2023-03-08 03:19:02
【问题描述】:

如何在 Symfony 表达式语言中编写这种老式的印刷条件?

[globalVar = GP:tx_myext_myplugin|bla > 0]

可能是这样的

[request.getQueryParams()['tx_myext_myplugin[bla]'] > 0]

但这显然行不通。

【问题讨论】:

  • 嵌套数组似乎有问题,见:TYPO3 Forge
  • 谢谢,我想我使用的是旧方法,然后会在日志中收到另一个巨大的警告洪水......

标签: typo3 typoscript typo3-9.x


【解决方案1】:
[(request.getQueryParams()['tx_myext_myplugin'])['bla'] > 0]

【讨论】:

    【解决方案2】:

    如果它在日志中生成错误,那么您需要像这样检查..(即无法获取非数组上的项目)

    [request.getQueryParams() and
    request.getQueryParams()['tx_myext_myplugin'] and
    request.getQueryParams()['tx_myext_myplugin']['bla'] > 0]
    
    //Typoscript Code
    
    [end]
    

    &&在这里也可以用作条件运算符

    【讨论】:

      【解决方案3】:

      旧式 TypoScript 条件 [globalVar = GP:tx_myext_myplugin|bla > 0] 可以用新的条件语法编写,例如 [traverse(request.getQueryParams(), 'tx_myext_myplugin/bla') > 0]。

      将traverse 与getQueryParams 结合使用到avoid errors in case a key in the parameter array is not defined。

      【讨论】:

        猜你喜欢
        • 2020-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多