我什么时候应该使用 Mgmt:addTypoScript 、 setup.txt 和 ext_typoscript_setup?

When should I use Mgmt:addTypoScript , setup.txt and ext_typoscript_setup?

编写 TypoScript 的常用方法是在 Configuration/TypoScript/setup.txt 中。 但是还有另外两种写 TS 的方法。一个 ext_typoscript_setup.txt 另一个 ExtensionManagementUtility::addTypoScriptSetup().

谁能解释一下有什么区别,我应该在什么时候使用哪一个?

理论上 ext_typoscript_setup.txt 文件的使用已被弃用。理论上是因为它从未真正从核心中移除。

ext_typoscript_setup.txtExtensionManagementUtility::addTypoScriptSetup() 做的事情完全相同,因为它们总是加载给定的 TypoScript。然而,问题是有时人们很难覆盖这些默认代码。更复杂的是,sys_template 记录中的 select 字段 来自 TYPO3 扩展的静态模板文件 会影响顺序。


作为解决方案(或者至少我是如何处理的):

始终使用在 Configuration/TypoScript/... 中包含 TS 的方式,让集成商决定如何以及以何种顺序包含它。有些人在他们的 SitePackage 中包含 TypoScript,有些在 sys_template 记录中,...

但是,如果某些 TS 必须可用并且集成商不会更改,我也会在极少数情况下使用 ext_typoscript_setup.txt