【问题标题】:Which template system should I use in Typo3?我应该在 Typo3 中使用哪个模板系统?
【发布时间】:2012-07-09 21:37:10
【问题描述】:

到目前为止,我一直使用模板自动解析器。我喜欢这样一个事实,即我可以使用打字稿修改模板的任何元素,而无需更改初始 HTML 文件。我还喜欢我可以直接在 Web 浏览器中呈现 html 模板,用虚拟元素填充它以查看菜单和内容元素的示例。最后,使用新的后端模板,我现在可以将内容元素放置在网格上的任何位置,以模仿网站的真实方面。

我知道还有 TemplaVoila。我从来没有花时间去学习它。我的感觉是它与某些扩展的兼容性较差,但也许我错了。

现在,有一种流体,将用于下一版本的 Typo3。虽然很明显使用它比使用模板标记更好,但我真的不明白为什么我应该使用 Fluid 比使用模板自动解析器或 TemplaVoila 更好。我不喜欢的是它需要使用特殊标签修改 html 模板,这意味着网页设计师必须了解 Fluid,或者 Typo3 集成商必须在每次执行修改时从设计师那里修改模板。

我的问题是:我应该为我的网站模板将表单模板自动解析器迁移到 Fluid 吗?使用流体有什么好处?为什么应该更好?我应该在 Typo3 中使用什么模板系统?

【问题讨论】:

  • 这里有一个很好的资源:@​​987654321@

标签: typo3 template-engine fluid templavoila


【解决方案1】:

只要 TypoScript 不支持对象,FLUIDTEMPLATE 相对于模板自动解析器的好处只是少数。所以不需要迁移。

但是恕我直言,有一些论点可以切换到流体:

  • 越来越多的扩展将使用流体,因此它将帮助您学习流体
  • 您可以使用带有代码完成功能的 ide 来处理流体(它只是 XML!)
  • fluid 真的很强大,你可以有 f.e. if 语句检查空内容
  • 有一天 TypoScript 也会支持对象

但是对于扩展开发,就完全不同了。在扩展中,我总是更喜欢使用 FLUID。您不必再处理扩展中的模板内容。只需将数据传递给流体,与视图有关的事情将在您的模板中完成。

【讨论】:

  • 什么是'TypoScript 不支持对象'?
  • 一个 TypoScript 对象总是返回字符串。无法使用 TypoScript(目前)返回对象或数组。
【解决方案2】:

无论你选择什么,它都应该是基于 Fluid 的——这将使你变得非常通用,并且它使实现不如模板重要,这非常好。

我本人是“Fluid Powered TYPO3”框架(以前称为 FED)的创建者,当然建议您看看这个框架可以为您做什么 - 它可以做很多很棒的事情,尤其是其中为您节省了大量时间,同时允许您为页面和内容创建更加一致的模板 - 甚至是后端模块

我们总是乐于帮助新用户。我们目前正在改进我们的文档,但您已经可以在我们的 Github 页面上找到许多最新的指南 - https://github.com/FluidTYPO3 - 名为“文档”的存储库是我们存储所有文档的地方。

您可能想看看 http://fedext.net http://fluidtypo3.org - 特别是“功能之旅”,它试图用尽可能少的文字解释流体动力 TYPO3 的要点。之后,文档中的示例将使您更清楚地了解 Fluid Powered TYPO3 可以为您做什么。

我们始终关注效率 - 我们已尝试完成所有繁重的工作,以便您真正可以坐下来开始创建页面模板。我们从 TemplaVoila 中汲取了很多灵感,但不再需要重新映射内容和类似的事情:当您更改模板时,该更改会立即反映出来,这使得在迭代中使用并执行诸如连续之类的事情非常好交付和集成。

希望这会有所帮助!

干杯,
克劳斯又名。无名程序员

【讨论】:

    【解决方案3】:

    您也可以争辩说,添加特殊标签,例如

    <f:section name="typo-content">
       <div id="content">This is where the designer intended content to go</<div>
    </f:section>
    

    可以在重新设计时帮助您的设计师了解您将内容元素“映射”到的位置。自动解析器和 TemplaVoila 都不是这种情况。因此,如果设计师在您周围移动东西,可能会取回您的模板,并且它们仍然可以在没有任何修改的情况下工作。

    【讨论】:

      猜你喜欢
      • 2012-10-21
      • 2012-09-03
      • 2011-10-07
      • 2010-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-06
      相关资源
      最近更新 更多