重用config.yaml进行路由的正确方法是什么?
情况:我在不同的网站上安装了一个typed3。超过200行的路由配置保存在:\typep3conf\sites\website1\config.yaml
将此config.yaml与所有其他网站一起使用的正确方法是什么并且仅重新配置以下方面的差异:\typep3conf\sites\website2-100\config.yaml
有了打字本,这很容易。有没有办法使用这个:
1. <INCLUDE_TYPOSCRIPT: source="FILE:typo3confsiteswebsite1config.yaml">
2. Overide differences like "rootPageID: 2" or delete configs with ">"
为了详细说明Jonas的提示,这里有一个更具体的例子:
单个站点的站点配置与其他站点相似,因此应尽可能短,存储在sites/mysite/config.yaml
中
rootPageId: 14523
base: 'https://www.mysite.mytld'
imports:
- { resource: "EXT:mysitepackage/Configuration/Sites/defaultSiteConf.yaml" }
EXT:mysitepackage/Configuration/Sites/defaultSiteConf.yaml
的内容,基本上所有站点共享的默认配置(尽管可能有例外(。
imports:
- { resource: "EXT:mysitepackage/Configuration/Sites/errorHandling.yaml" }
- { resource: "EXT:mysitepackage/Configuration/Sites/language.yaml" }
- { resource: "EXT:mysitepackage/Configuration/Sites/route.pages.yaml" }
- { resource: "EXT:mysitepackage/Configuration/Sites/route.tt_news.yaml" }
EXT:mysitepackage/Configuration/Sites/language.yaml
的内容,作为一个例子,默认配置可以拆分为多个文件,以更容易地跟踪更改
languages:
- title: Deutsch
enabled: true
base: /
typo3Language: de
locale: de_DE.UTF-8
iso-639-1: de
navigationTitle: Deutsch
hreflang: de-DE
direction: ltr
flag: de
languageId: '0'
- title: English
enabled: true
base: /en/
typo3Language: default
locale: en_GB.UTF-8
iso-639-1: en
navigationTitle: English
hreflang: en-GB
direction: ltr
fallbackType: fallback
fallbacks: '0'
flag: gb
languageId: '1'
如果使用TYPO3v9,则可以使用imports:
。
文件:
https://docs.typo3.org/m/typo3/reference-coreapi/master/en-us/ApiOverview/Yaml/Index.html
从TYPOv10开始,它们也可以是相对的:
变更日志:
https://docs.typo3.org/c/typo3/cms-core/master/en-us/Changelog/10.1/Feature-88742-ImportYamlFilesRelativeToTheCurrentYamlFile.html