【问题标题】:TypoScript 'stdWrap.required = 1' not working as expectedTypoScript 'stdWrap.required = 1' 未按预期工作
【发布时间】:2016-11-25 21:43:36
【问题描述】:

我正在尝试使用从 cObjects 中获取的值来呈现带有打字稿的列。我已经计划好了,如果有内容则构建列,否则删除列。据我所知,我想出使用required = 1。但结果打破了我的期望,质疑了我上面提到的“知识”:(

这是我配置的。

FIRST_MODULE = USER_INT
FIRST_MODULE {
  userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
  vendorName = dev
  extensionName = devlist
  pluginName = devlist
  controller = devlist
  switchableControllerActions {
    devlist {
      1 = firstmodule
      2 = addtobag
    }
  }
}

SECOND_MODULE = COA
SECOND_MODULE {
  10 = USER_INT
  10 {
    userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
    vendorName = dev
    extensionName = devlist
    pluginName = devlist
    controller = devlist
    switchableControllerActions {
      devlist {
        1 = secondmodule
        2 = addtobag
      }
    }
  }  
}

现在是专栏

RIGHTCOL = COA
RIGHTCOL {
  10 < FIRST_MODULE
  20 < SECOND_MODULE
  40 < styles.content.getRight
  40 {
    stdWrap {
      wrap = <section class="rightcont">|</section>
      required = 1
    }
  }
  stdWrap {
    wrap = <section class="rightcol">|</section>
    required = 1
  }
}

通过在前端检查.. 即使调用的用户函数什么也不返回并且在右列中没有提供任何内容

<section class="rightcol"></section>

标签之间没有任何空格或输入..我已经包装了两个模块并用它进行了测试,显示 SECOND_MODULES 标签出现在与 rightcol 相同的结构中(没有任何空格)..

所以.. 我希望你们明白我想要表达的意思。消费 lotta 咖啡和做'坚果来配置这个.. 提前感谢,任何帮助

【问题讨论】:

  • 您确定您的 Extbase 插件在实际源输出中没有空格吗?流体很容易做到这一点。
  • Yup.Totally.. 我已经检查了多次以确保:(
  • 您使用哪个版本的 TYPO3?你用stdWrap.trim = 1了吗?您是否尝试使用stdWrap.if.isTrue ... 而不是stdWrap.required = 1?你能告诉我们究竟输出了什么(HTML),什么时候不应该有任何输出?
  • 我正在使用 TYPO3 7.6.10 。不使用 stdWrap.trim = 1 和 stdWrap.if.isTrue ...如果没有内容,我也不想要标签。我的意思是,不应该有

标签: typo3 typoscript required


【解决方案1】:

我有相同的代码完美运行。唯一的区别是 required = 1 的位置。它在换行之前。

ELEM.stdWrap.required = 1
ELEM.stdWrap.wrap = <div class="wrap">|</div>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-04
    • 2022-01-24
    • 2015-05-11
    • 2020-05-15
    • 2014-10-31
    • 2018-02-12
    • 2014-01-20
    • 2015-01-13
    相关资源
    最近更新 更多