TYPO3:在 TCEFORM 中重新定义 altLabels 以用于多站点布局

TYPO3: re-define altLabels in TCEFORM for layout with multisite

我使用 EXT:T3sBootstrap 并为编辑器可能 select 的布局定义可理解的声音......这适用于以下代码:

ext_localconf.php :

# Set TCEFORM features 
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPageTSConfig('<INCLUDE_TYPOSCRIPT: source="FILE:EXT:myExt/Configuration/PageTSConfig/TCEForm.ts">');

Configuration/PageTSConfig/TCEForm.ts :

TCEFORM {
    tt_content {
        layout {
            addItems {
                4 = special box
                100 = extra
            }
            altLabels {
                0 = Default
                1 = image shadow
                2 = line shadow
                3 = line shadow inv
            }
            disableNoMatchingValueElement = 1
        }
    }
}

在我的第二个站点中,我希望能够用可理解的声音重新定义这些标签,但是,虽然第一个站点的静态模板不包括在内,但它采用了这个配置,而不是使用我刚刚定义的那个在新的 myExt ...

(Page) TSconfig 独立于 TypoScript 静态模板加载。您当前将 TSconfig 加载到 TYPO3 的方式,它将用于此 TYPO3 实例中的所有网站。因此,您第二个站点的 TSconfig 会被上面显示的第一个配置简单地覆盖。

从 TYPO3 v7 开始,您可以使用 registerPageTSConfigFile 根据需要将 TSconfig 设置添加到您不同的页面树和网站中:

your_extension/Configuration/TCA/Overrides/pages.php

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::registerPageTSConfigFile(
    'your_extension',
    'Configuration/PageTSConfig/TCEForm.ts',
    'My TCEform config including custom altLabels'
);

这使您能够 select 页面属性中的 TSconfig,它将应用于所有子页面。

您可以找到一个工作示例 here