gpt4 book ai didi

content-management-system - 关于TYPO3模板系统的诸多疑问

转载 作者:行者123 更新时间:2023-12-01 16:30:12 25 4
gpt4 key购买 nike

我对 TYPO3 很陌生(我来自 Joomla 和 WordPress),并且我很难理解 TYPO3 中如何处理模板(在我看来,TYPO3 中的情况比 Joomla 和 WordPress 中的情况更复杂) WordPress)。

我已经安装并正在测试此版本的 TYPO3 introductionpackage-6.1.3.zip

在 Joomla 和 WordPress 中,模板只是一个 HTML 结构(在放置 CMS 模块的页面的各个区域中进行标记)和相关的 CSS 设置。

在 TYPO3 中,我觉得情况非常不同,还是我错了?

此刻我正在阅读官方文档的这一部分,其中引用了TYPO3入门包的默认模板:http://docs.typo3.org/typo3cms/GettingStartedTutorial/Templates/Index.html

使用 CMS 创建的网站的静态内容动态内容之间的区别对我来说非常清楚(这与 Joomla 或 WP 等任何其他 CMS 没有什么不同) )

动态内容:是由 CMS(执行一些查询)动态创建的菜单(它查看数据库表,然后脚本在页面上呈现菜单)

静态内容:是固定为网站标题或背景图片的内容

到目前为止,我认为这对我来说已经很清楚了,但是当文档谈到模板记录作为实现先前原则的一种方式时,我有很多疑问。

这里:http://docs.typo3.org/typo3cms/GettingStartedTutorial/Templates/%28%28generated%29%29/Index.html

它说:

This is a control element that instructs TYPO3 how to handle a certain branch of the page tree.

特别是这张图片显示了如何修改介绍包模板的这些模板记录(介绍包也是随此包提供的模板的名称还是什么?):

enter image description here

然后在文档的这一部分中它说:

If you edit the template "Introduction Package" you will see that most fields are empty. For each website you need a TypoScript template on the ROOT level, in this case that is the "Introduction Package" template. The TypoScript configuration of a website can be quite long therefore it is possible to make many small TypoScript templates that get included in the main template. For better maintenance, all TypoScript of the Introduction Package has been put into the folder 'Typoscript Templates'. The only thing the "Introduction Package" template does is to include the "ROOT" template that in turn includes other templates.

这对我来说完全晦涩难懂:我知道 TypoScript 是一种可用于配置前端的配置语言(所以我认为我可以使用它来配置我的页面的显示方式),但我不能理解以下断言:

  1. 这是什么意思:对于每个网站,您都需要一个 ROOT 级别的 TypoScript 模板,在本例中为“简介包”模板?我已经安装了 TYPO3 入门包,但我只有一个网站!网站的ROOT级别是多少?它是列表部分树中的Welcome to TYPO3 节点吗?因此,在实践中,我将一个特定的模板分配给网站的根目录,并在所有子节点中使用该模板(所有页面如“主页”、“关于 TYPO3”、“功能”等)?

  2. 这句话是什么意思:为了更好的维护,简介包中的所有 TypoScript 已放入“Typoscript Templates”文件夹中。这个文件夹在哪里?我没有。

  3. 这句话是什么意思:“简介包”模板所做的唯一事情就是包含“ROOT”模板,而“ROOT”模板又包含其他模板。

Tnx 这么多

安德里亚

最佳答案

您网站的根级别是名为Home 的页面。它还具有地球仪而不是普通页面图标,因为在行为下的页面属性中设置了用作根页面标志。

当您访问 TYPO3 CMS 中的页面时,它将沿着根行向上移动,直到找到带有模板记录的页面。在本例中,它确实是一条名为Introduction Package的记录,但更重要的是,这是一条template类型的记录。

好的,到目前为止我们已经找到了适合您请求的模板。现在 TypoScript 开始发挥作用。在正常请求中,模板引擎将搜索名为 page 的对象,该对象(通常)类型为 PAGE。因此最简单的模板是:

page = PAGE
page.10 = TEXT
page.10.value = <h1>Hello World</h1>

它只是在您的网站上打印Hello World

接下来发生的情况取决于您选择的模板方法(标记库、automaketemple+标记、templavoila、fluid、fedext,...)。这意味着TYPO3 CMS不仅仅只有一种模板方法(或一种模板),而且是可扩展的并且非常灵活,因为您可以将它们组合起来。

简介包中使用automaketemplate+markers方法。这包括一个现成的 HTML 模板,根据某些规则自动创建 block ,然后用动态内容替换这些 block 。

好的,您在哪里可以找到此配置?实际的模板文件是 fileadmin/default/templates/introduction_package_site_struction_template.htmlTypoScript 配置位于 fileadmin/default/TypoScript 中。在那里您可以找到一个名为 setup.ts 的文件。它包括所有其他 TypoScript 文件。有各种文件夹,例如menu 用于菜单定义,block 用于动态 block 等。automaeketemplate的配置位于Extension/AutomakeTemplate/setup.ts中。

automaketemplate 的帮助下定义的部分将在 Page/setup.ts 中替换。

完整的TypoScript定义了对象的树结构及其配置。您可以使用模板分析器或在模板工具中找到的TypoScript对象浏览器查看完整的已解析模板code> 在模块顶部的下拉选择框中。

TypoScript 分成几个文件是根据文件内的配置目的来完成的。这是为了方便维护,而不是为了方便学习。您始终可以使用模板分析器来查看从片段生成的完整模板,并使用TS对象浏览器来查看这会产生什么样的配置树。

一开始这听起来可能有点困难,特别是与其他产品的原始模板系统相比,但是它为您提供了巨大的可能性,而且即使您进行重大更新,也易于维护。

关于content-management-system - 关于TYPO3模板系统的诸多疑问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18257976/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com