1

私の状況

デフォルトの TCA は、tt_content に対して 2 つの異なるパレットを構成します。

  • header
  • headers(ヘッダーと同じですが、サブヘッダー フィールドが追加されます)

デフォルトでは、cType のみがパレットheaderを使用し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 に答える