带有 (twb) twitter bootstrap 样式的 typo3 新闻扩展
typo3 news extension with (twb) twitter bootstrap styles
我为 typo3 7.6 版创建了一个基于 twitter bootstrap 的自定义分发。一切正常。除了使用新闻扩展的常量设置不会被识别或被覆盖。
我让它工作的唯一方法是将声明保存到 typo3 后端的模板内容字段中。
plugin.tx_news {
view.twb {
templateRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Templates
partialRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Partials/
layoutRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Layouts/
}
}
无论我在我的 constants.txt 分发中包含什么,新闻扩展都会忽略它。
我的根模板中包含的静态模板的顺序是这样的:
- 新闻(新闻)
- Bootstrap 发行版 (bootdist) //我的发行版
- 新闻样式 Twitter Bootstrap(新闻)
当我将我的发行版作为最新版本包含时,新闻扩展已经设置了所有模板路径,并且从发行版覆盖似乎不起作用。只有当我更改后端本身的扩展路径时,一切正常。
但我想通过我的发行版设置所有配置,而不必在后端的根模板中修复某些内容。
有没有办法做到这一点?
我对 typo3 还不太熟悉,但我尝试了一下......
我认为 tx_news 声明了其他变量,也许这行得通:
plugin.tx_news {
view.twb {
templateRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Templates/
partialRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Partials/
layoutRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Layouts/
}
}
有时候问题就是这么简单...
否则你实际上应该在你的新闻扩展的常量中声明你的模板,
我猜你已经在 https://docs.typo3.org/typo3cms/extensions/news/AdministratorManual/Templates/TwitterBootstrap/Index.html 上看到了关于 twitter bootstrap 的手册。
顺序应该是:
- 新闻
- 新闻 TWB
- 您的网站包扩展
在您的站点包扩展中 constants 您可以覆盖常量
plugin.tx_news {
view.twb {
# cat=plugin.tx_news/file; type=string; label=Path to template root (FE)
templateRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Templates
# cat=plugin.tx_news/file; type=string; label=Path to template partials (FE)
partialRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Partials/
# cat=plugin.tx_news/file; type=string; label=Path to template layouts (FE)
layoutRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Layouts/
}
}
使用 TypoScript 对象浏览器检查常量and/or 使用常量的设置
我为 typo3 7.6 版创建了一个基于 twitter bootstrap 的自定义分发。一切正常。除了使用新闻扩展的常量设置不会被识别或被覆盖。
我让它工作的唯一方法是将声明保存到 typo3 后端的模板内容字段中。
plugin.tx_news {
view.twb {
templateRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Templates
partialRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Partials/
layoutRootPath = EXT:bootdist/news/Private/Templates/Styles/Twb/Layouts/
}
}
无论我在我的 constants.txt 分发中包含什么,新闻扩展都会忽略它。 我的根模板中包含的静态模板的顺序是这样的:
- 新闻(新闻)
- Bootstrap 发行版 (bootdist) //我的发行版
- 新闻样式 Twitter Bootstrap(新闻)
当我将我的发行版作为最新版本包含时,新闻扩展已经设置了所有模板路径,并且从发行版覆盖似乎不起作用。只有当我更改后端本身的扩展路径时,一切正常。
但我想通过我的发行版设置所有配置,而不必在后端的根模板中修复某些内容。
有没有办法做到这一点?
我对 typo3 还不太熟悉,但我尝试了一下...... 我认为 tx_news 声明了其他变量,也许这行得通:
plugin.tx_news {
view.twb {
templateRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Templates/
partialRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Partials/
layoutRootPaths = EXT:bootdist/news/Private/Templates/Styles/Twb/Layouts/
}
}
有时候问题就是这么简单... 否则你实际上应该在你的新闻扩展的常量中声明你的模板,
我猜你已经在 https://docs.typo3.org/typo3cms/extensions/news/AdministratorManual/Templates/TwitterBootstrap/Index.html 上看到了关于 twitter bootstrap 的手册。
顺序应该是:
- 新闻
- 新闻 TWB
- 您的网站包扩展
在您的站点包扩展中 constants 您可以覆盖常量
plugin.tx_news {
view.twb {
# cat=plugin.tx_news/file; type=string; label=Path to template root (FE)
templateRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Templates
# cat=plugin.tx_news/file; type=string; label=Path to template partials (FE)
partialRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Partials/
# cat=plugin.tx_news/file; type=string; label=Path to template layouts (FE)
layoutRootPath = EXT:news/Resources/Private/Templates/Styles/Twb/Layouts/
}
}
使用 TypoScript 对象浏览器检查常量and/or 使用常量的设置