TYPO3 没有读取我的扩展的 setup.txt 或 constants.txt
TYPO3 is not reading setup.txt or constants.txt of my extension
我目前正在开发 7.6。我制作了一些小插件,需要为不同的页面覆盖它们的模板,但我无法让 TYPO3 执行此操作。
我在 sys_template.php
中添加了静态文件包含:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile(
'my_contacts',
'Configuration/TypoScript',
'Main Template'
);
包含 setup.txt
和 constants.txt
:
如你所见,我也是静态添加的
setup.txt
plugin.my_contacts {
view {
templateRootPaths {
0 = EXT:my_contacts/Resources/Private/Templates/
1 = {$plugin.my_contacts.view.templateRootPath}
}
partialRootPaths {
0 = EXT:my_contacts/Resources/Private/Partials/
1 = {$plugin.my_contacts.view.partialRootPath}
}
layoutRootPaths {
0 = EXT:my_contacts/Resources/Private/Layouts/
1 = {$plugin.my_contacts.view.layoutRootPath}
}
}
settings {
cssFile = {$plugin.my_contacts.settings.cssFile}
}
}
constants.txt
plugin.my_contacts {
view {
# cat=plugin.my_contacts/file; type=string; label=Path to template root (FE)
templateRootPath = EXT:my_contacts/Resources/Private/Templates/
# cat=plugin.my_contacts/file; type=string; label=Path to template partials (FE)
partialRootPath = EXT:my_contacts/Resources/Private/Partials/
# cat=plugin.my_contacts/file; type=string; label=Path to template layouts (FE)
layoutRootPath = EXT:my_contacts/Resources/Private/Layouts/
}
settings {
# cat=plugin.my_contacts/file; type=string; label=Path to CSS file
cssFile = EXT:my_contacts/Resources/Public/Css/news-basic.css
}
}
以前的内容很简单,但在这个阶段,我从news
插件中复制了它们,所以它现在有更多的设置,但是当我检查模板分析器或尝试时我没有看到这些条目访问 vew/controller 中的设置。此外,当我尝试覆盖页面中模板内容中的模板路径时,那里也没有任何反应。
插件模板本身可以识别和读取,我只是无法覆盖它们(或从设置读取设置)。
我读了很多例子,但找不到我遗漏的东西,所以任何提示都值得赞赏。
PS:另外,我已经清除了所有系统缓存和自动加载信息,以防万一。没有帮助。
现在您刚刚注册了静态 Typoscripts,以便在 Typoscript 模板中使用。请使用后端的 "Template" 模块 select 您的 Typoscript 模板,然后转到 "Edit whole Template record"。在 "Includes" 上,您现在可以看到所有像您的扩展一样注册了静态 Typoscript 的扩展,并将它们包含到您当前的模板中。 (请参阅下面的屏幕截图)。
您是否在 TypoScript 模板中包含了静态模板?
- 打开 TYPO3 后端
- 前往模块 "Template"
- Select你的主页
- Select Info/Edit 在顶部的 select 框中
- 点击底部按钮"Edit the whole template record"
- 前往选项卡 "Includes"
- 前往字段 "Include static (from extensions)" 和 select 您的 TypoScript。在你的情况下,它的标题应该是 "Main template (my_contacts)"
我目前正在开发 7.6。我制作了一些小插件,需要为不同的页面覆盖它们的模板,但我无法让 TYPO3 执行此操作。
我在 sys_template.php
中添加了静态文件包含:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile(
'my_contacts',
'Configuration/TypoScript',
'Main Template'
);
包含 setup.txt
和 constants.txt
:
如你所见,我也是静态添加的
setup.txt
plugin.my_contacts {
view {
templateRootPaths {
0 = EXT:my_contacts/Resources/Private/Templates/
1 = {$plugin.my_contacts.view.templateRootPath}
}
partialRootPaths {
0 = EXT:my_contacts/Resources/Private/Partials/
1 = {$plugin.my_contacts.view.partialRootPath}
}
layoutRootPaths {
0 = EXT:my_contacts/Resources/Private/Layouts/
1 = {$plugin.my_contacts.view.layoutRootPath}
}
}
settings {
cssFile = {$plugin.my_contacts.settings.cssFile}
}
}
constants.txt
plugin.my_contacts {
view {
# cat=plugin.my_contacts/file; type=string; label=Path to template root (FE)
templateRootPath = EXT:my_contacts/Resources/Private/Templates/
# cat=plugin.my_contacts/file; type=string; label=Path to template partials (FE)
partialRootPath = EXT:my_contacts/Resources/Private/Partials/
# cat=plugin.my_contacts/file; type=string; label=Path to template layouts (FE)
layoutRootPath = EXT:my_contacts/Resources/Private/Layouts/
}
settings {
# cat=plugin.my_contacts/file; type=string; label=Path to CSS file
cssFile = EXT:my_contacts/Resources/Public/Css/news-basic.css
}
}
以前的内容很简单,但在这个阶段,我从news
插件中复制了它们,所以它现在有更多的设置,但是当我检查模板分析器或尝试时我没有看到这些条目访问 vew/controller 中的设置。此外,当我尝试覆盖页面中模板内容中的模板路径时,那里也没有任何反应。
插件模板本身可以识别和读取,我只是无法覆盖它们(或从设置读取设置)。
我读了很多例子,但找不到我遗漏的东西,所以任何提示都值得赞赏。
PS:另外,我已经清除了所有系统缓存和自动加载信息,以防万一。没有帮助。
现在您刚刚注册了静态 Typoscripts,以便在 Typoscript 模板中使用。请使用后端的 "Template" 模块 select 您的 Typoscript 模板,然后转到 "Edit whole Template record"。在 "Includes" 上,您现在可以看到所有像您的扩展一样注册了静态 Typoscript 的扩展,并将它们包含到您当前的模板中。 (请参阅下面的屏幕截图)。
您是否在 TypoScript 模板中包含了静态模板?
- 打开 TYPO3 后端
- 前往模块 "Template"
- Select你的主页
- Select Info/Edit 在顶部的 select 框中
- 点击底部按钮"Edit the whole template record"
- 前往选项卡 "Includes"
- 前往字段 "Include static (from extensions)" 和 select 您的 TypoScript。在你的情况下,它的标题应该是 "Main template (my_contacts)"