2012-07-09 82 views
1

到目前为止,我曾经使用模板自动分析器。我喜欢这样一个事实,即我可以使用typoscript修改模板的任何元素,而不必更改最初的HTML文件。我也喜欢这样一个事实,即我可以直接在Web浏览器中呈现html模板,使用虚拟元素填充它以查看菜单和内容元素的示例。最后,借助新的后端模板,我现在可以将内容元素放置在网格的任何位置,以模仿网站的真实方面。我应该在Typo3中使用哪种模板系统?

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

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

我的问题是:我应该将表单模板自动分析器迁移到Fluid for my website template?使用Fluid有什么好处?为什么它应该更好? Typo3应该使用哪种模板系统?

+0

这是一个很好的资源:[http://castironcoding.com/resources/our-blog/sp/view/single/post/reason-9-for-choosing-typo3-fluid-templating-engine.html] (http://castironcoding.com/resources/our-blog/sp/view/single/post/reason-9-for-choosing-typo3-fluid-templating-engine.html) – peter 2012-07-10 18:46:03

回答

6

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

但恕我直言,有一些参数,切换到流体:

  • 越来越多的扩展将使用液,所以它会帮助你学习流体
  • 您可以使用IDE的代码完成的流体(它只是XML!)
  • 流体真的很强大,你可以有fe如果其检查内容为空
  • 某一天报表Typo脚本将支持对象以及

但对于扩展的研究与开发,这是完全不同的。在扩展中,我会使用FLUID来优先使用。你不必在扩展中处理模板事情了。只需将数据传递给流体,关注视图的内容将在您的模板中完成。

+1

什么意思'TypoScript不支持对象“? – 2012-07-10 13:35:19

+0

TypoScript对象返回全部字符串。不可能用TypoScript(还)返回对象或数组。 – maholtz 2012-07-10 14:36:47

0

你也可以争论,加入特殊的标签,如

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

可以帮助你的设计师而做了重新设计,知道你在哪里“映射”你的内容元素。 autoparser和TemplaVoila都不是这种情况。所以如果设计师在你周围移动东西,你可能会回到你的模板,他们仍然工作,没有任何修改。

4

无论你选择什么,它应该是基于流体的东西 - 这将允许你是非常灵活的,它使得实现不如模板重要,这是非常好的。我自己是“流体动力TYPO3”框架(以前称为FED)的创造者,并且当然会推荐你看看这个框架可以为你做些什么 - 它能够做出伟大的事情,而不是其中至少是为您节省大量时间,同时允许您为页面和内容创建更一致的模板 - 甚至是后端模块

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

你可能想看看 http://fedext.net http://fluidtypo3.org - 尤其是“特色游”它试图解释流体供电TYPO3点作为几句话越好。之后,文档中的示例将为您提供更加清晰的流体动力TYPO3可为您做的事情。

我们始终专注于效率 - 我们一直在努力完成所有繁重工作,以便您可以坐下来开始创建页面模板。我们从TemplaVoila那里得到了很多灵感,但是没有更多的内容重新映射,像这样:当你改变你的模板时,这个改变会立即反映出来,这使得它在迭代中处理非常好,交付和整合。

希望这有助于!

干杯,
克劳斯aka。 NamelessCoder