6

我有一个多域 TYPO3 CMS 安装,其中每个 X 页面树都有自己的页面模板和使用 FluidTYPO3 构建的内容元素。

目前,后端用户可以看到不同提供程序扩展提供的所有模板和元素。现在的问题是:是否可以通过某些用户定义的条件禁用页面模板和内容元素(如果我们在页面 Y 的子页面上仅显示页面模板 A 和内容元素 B、D 和 F?

马库斯

4

3 回答 3

2

解决方案是为单独的模板集提供单独的 TS 配置。

请参见以下示例:

your_ext/Configuration/TypoScript/Set1/setup.txt

plugin.tx_yourext.view {
    templateRootPath = EXT:your_ext/Resources/Private/Set1/Templates/
    partialRootPath = EXT:your_ext/Resources/Private/Set1/Partials/
    layoutRootPath = EXT:your_ext/Resources/Private/Set1/Layouts/
}

your_ext/Configuration/TypoScript/Set2/setup.txt

plugin.tx_yourext.view {
    templateRootPath = EXT:your_ext/Resources/Private/Set2/Templates/
    partialRootPath = EXT:your_ext/Resources/Private/Set2/Partials/
    layoutRootPath = EXT:your_ext/Resources/Private/Set2/Layouts/
}

your_ext/ext_tables.php

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

因此,您可以在树中的指定 TS 模板中包含所需的集合。例如,您的结构是:

root
 |
 |- Home1 (TS Template)
 |   |
 |   |- Page 1
 |   |- Page 2
 |- Home2 (TS Template)
     |
     |- Page 1
     |- Page 2

然后,您可以在“Home1”TS 模板中包含“Templates Set1”,但在“Home2”TS 模板中包含“Templates Set2”。

唯一的缺点:您不能在同一页面上同时使用两组。

更多信息在官方手册

2015 年 3 月 5 日更新:已创建票证来跟踪无法取消设置自定义 CE 的问题,现在这个问题终于解决了。因此,以上面的提交消息为例,可以这样做:

# disable the "Alert" element:
plugin.tx_fluidbootstraptheme.forms.alert.enabled = 0
于 2014-12-26T13:31:44.817 回答
0

我为一个项目所做的是根据站点名称生成目录树:

  • 站点1
    • 模板
    • 布局
    • 偏音
  • 站点2
    • 模板
    • 布局
    • 偏音

我比创建:

plugin.tx_yourprovidername.settings.sitename = site1

然后我可以在我的模板中使用它:

<f:layout name="{settings.sitename}/nameoflayout"/>
于 2014-12-10T18:05:27.237 回答
0

至少有一种方法可以在新内容向导中隐藏元素和选项卡。将此添加到您的页面 tsconfig 并确保将其包含在页面树中(属性 > 资源 > 排版配置):

mod.wizards.newContentElement.wizardItems.common.show =

此行将隐藏新内容向导中的“常用”选项卡。如果您相应地对您的 ce 模板进行分组,您可以控制为给定的页面树显示哪些元素。您还可以使用“:= removeFromList(yourElement1, ...)”隐藏单个元素。

请记住,这仅适用于新内容向导。编辑元素时,您仍然可以从“流动内容类型”下拉列表中选择任何 ce。

我仍在寻找显示和隐藏页面模板以及禁用某些元素的方法。我一找到东西就会尝试更新这个答案:)

干杯...

于 2016-03-23T08:26:53.117 回答