1

我的情况

默认 TCA 为 tt_content 配置两个不同的调色板:

  • header
  • headers(与标题相同,只是添加了子标题字段)

默认情况下,只有 cTypeheader使用headers调色板。所有其他默认内容元素(css_styled_content 或 fluid_styled_content)都使用header调色板。

我的实际替代解决方案又名解决方法

我知道可以在我的主题/站点包扩展中将子标题字段添加到特定 CE ext:mytheme/Configuration/TCA/Overrides/tt_content.php

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addToAllTCAtypes(
    'tt_content',
    'subheader',
    'textmedia,bullets,table,uploads,menu,shortcut',
    'after:header'
);

更好的解决方案?

仅在适当的 showitem 配置header中用字符串替换字符串感觉不太好。headers

有没有更好/正确的方法来代替它?

4

1 回答 1

0

您可以重写“showitem”数组并像这样使用标题调色板(但我不知道这是否真的比您的解决方案更好):

$GLOBALS['TCA']['tt_content']['types']['uploads'] = array_replace_recursive(
    $GLOBALS['TCA']['tt_content']['types']['uploads'],
    [
        'showitem' => '
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.general;general,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.header;headers,rowDescription,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:media;uploads,
    --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.appearance,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.frames;frames,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.uploads_layout;uploadslayout,
    --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.visibility;visibility,
        --palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:palette.access;access,
    --div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.extended
        ',
    ]
); 
于 2016-10-27T13:48:13.730 回答