TYPO3提供程序扩展现在在页面布局选项卡中显示其页面布局

时间:2016-08-01 08:09:55

标签: php typo3 typoscript flux fluid

在编辑页面属性并转到“页面布局”选项卡时,我无法在TYPO3后端的提供程序扩展中选择页面布局。

我的提供者扩展程序覆盖在fluidbootstraptheme上。我以前做过这个,但由于某种原因我这次不能上班吗???我的提供商扩展程序的TS包含在我的主TS模板中,CSS / JS资产正常工作......而不是模板/部分/布局。我仔细检查过我的路径。这是从TYPO3 6.2升级到7.6的最后一块。其他一切正常,我在其他任何地方都没有看到任何错误。我真的应该是一个简单的问题。

环境:升级后的 - > TO

  • TYPO3 6.2.0 - > 7.6.10
  • fluidbootstraptheme 1.1.0 - >发展(目前为2.0.0)
  • flux 7.1.2 - > 7.4.0
  • fluidpages 3.1.2 - > 3.6.0
  • fluidcontent 4.1.1 - > 4.4.1
  • vhs 2.2.0 - > 3.0.1

SETUP.TXT

plugin.tx_fluidbootstraptheme.view {
    templateRootPaths.1 = {$plugin.tx_someexample.view.templateRootPaths.0}
    partialRootPaths.1 = {$plugin.tx_someexample.view.partialRootPaths.0}
    layoutRootPaths.1 = {$plugin.tx_someexample.view.layoutRootPaths.0}
}

constants.txt

plugin.tx_someexample.view {
    templateRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Templates/
    partialRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Partials/
    layoutRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Layouts/
}

ext_tables.php

<?php
if (!defined('TYPO3_MODE')) {
    die ('Access denied.');
}

TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile($_EXTKEY, 'Configuration/TypoScript', 'some_example');

ext_localconf.php

<?php
if (!defined('TYPO3_MODE')) {
    die ('Access denied.');
}

\FluidTYPO3\Flux\Core::registerProviderExtensionKey('some_example', 'Page');
\FluidTYPO3\Flux\Core::registerProviderExtensionKey('some_example', 'Content');

来自提供商扩展程序的Layouts / WithSideBar.html

Link to Gist of Layouts/WithSideBar.html

来自fluidbootstraptheme的模板/页面/ WithSideBar.html

Link to Gist of Templates/Page/WithSideBar.html

Page Layouts

Static template added

2 个答案:

答案 0 :(得分:1)

您可能希望为plugin.tx_fluidbootstraptheme.view中的叠加层选择大于10的模板路径索引值。 Flux(以及流体页面)的默认值为0或10,具体取决于您使用的版本 - 选择大于10的值可以避免任何问题。

答案 1 :(得分:0)

这就是页面布局不起作用的原因......无法解释原因,但这解决了这个问题。 我很乐意修改答案,这里有人可以详细解释原因。

解决方案:确保您的覆盖文件没有隐藏在子目录中。只要我将TemplatesLayoutsPartials文件夹立即子目录设置为提供程序扩展,就可以使用。

而不是......

constants.txt(最初)

plugin.tx_someexample.view {
    templateRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Templates/
    partialRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Partials/
    layoutRootPaths.0 = EXT:some_example/Resources/Private/Ext/Fluidbootstraptheme/Layouts/
}

...更改文件所在的路径...

constants.txt(已修改的模板,部分和布局文件夹位置)

plugin.tx_someexample.view {
    templateRootPaths.0 = EXT:some_example/Resources/Private/Templates/
    partialRootPaths.0 = EXT:some_example/Resources/Private/Partials/
    layoutRootPaths.0 = EXT:some_example/Resources/Private/Layouts/
}

现在叠加文件暂时正常工作。