对于那些想要在 TYPO3 v10+ 中生成 URL 时自定义所有内容的人来说,Masi 是缺失的部分。
TYPO3 v10 在生成子页面的 URL 时默认会跳过“SysFolder”和“Spacers”类型的页面。 masi默认包含它们!
masi还附带了一个新的页面复选框,用于在生成子页面时排除某个页面 slug。这样,您可以仅排除某些 SysFolders。
有一个 CLI 命令可将选项从 RealURL 迁移到masi数据库字段。
masi评估 PageTSconfig,您可以在其中覆盖您的值。
TCEMAIN.pages.slug.generatorOptions {
fields = company, city
fieldSeparator = -
}
masi允许您通过 PageTS 为特定页面树设置硬前缀 (!):
TCEMAIN.pages.slug.generatorOptions {
prefix = /wishlist/
}
任何前缀都会添加在父页面前缀之前,但您也可以禁用选项“prefixParentPageSlug”
TCEMAIN.pages.slug.generatorOptions {
prefixParentPageSlug = 0
}
当然,“slug”字段中的所有值都可以由编辑器更改,但这里是为了方便起见。
通过composer req b13/masi
使用它或从 TYPO3 扩展存储库安装扩展masi
。
masi需要 TYPO3 v10.4.0 或更高版本。
如果你想从 RealURL 迁移,只要数据库字段pages.tx_realurl_exclude
存在,就执行这个一次性命令,并将数据传输到pages.exclude_slug_for_subpages
:
`vendor/bin/typo3 database:migrate:masi`
安装程序还有一个升级向导,可以通过 TYPO3 安装程序的升级工具执行相同的功能。
作为 TYPO3 Core, masi根据 GPL2 或更高版本获得许可。有关更多详细信息,请参阅许可证文件。
创建此扩展是为了展示您可以使用 TYPO3 v10 的一个魔术钩子做什么,并自定义许多东西。
TYPO3 社区经常要求可以将其放入小型且高效的扩展中的功能,而masi正是这样做的,而不必将所有内容都添加到 TYPO3 Core 中。
masi最初由 Benni Mack 于 2019 年为斯图加特 b13 创建,并得到了 Martin Kutschker 的大力支持。
查找我们开发的更多 TYPO3 扩展,帮助我们在客户项目中创造价值。作为我们工作方式的一部分,我们专注于测试和最佳实践,以确保所有代码的长期性能、可靠性和结果。