TYPO3 Ext. gridelements: удалить поле из FlexForm

С помощью TCEFORM на странице TS вы можете удалить поле FlexForm из плагина расширения, например из EXT:news:

TCEFORM.tt_content.pi_flexform.news_pi1.additional.settings\.detailPid.disabled = 1

Пример выше работает, но как я могу удалить поле из gridlements FlexForm?

Это не работает:

TCEFORM.tt_content.pi_flexform.gridelements_pi1.mySheet.myField.disabled = 1

Более подробно:

Я использую EXT:bootstrap_grids, который предоставляет FlexForm "flexform_2col.xml". Из этой FlexForm я хочу отключить вкладку "largeDevices" с полями "lgCol1" и "lgCol2":

<T3DataStructure>
    <sheets>
        [...]
        <largeDevices>
            <ROOT type="array">
                <TCEforms>
                    <sheetTitle>LLL:EXT:bootstrap_grids/Resources/Private/Language/locallang_db.xlf:grid.sheet.largeDevices</sheetTitle>
                </TCEforms>
                <type>array</type>
                <el type="array">
                    <lgCol1 type="array">
                        <TCEforms type="array">
                            <label>LLL:EXT:bootstrap_grids/Resources/Private/Language/locallang_db.xlf:grid.label.col1</label>
                            <config type="array">
                                <type>select</type>
                                <renderType>selectSingle</renderType>
                                <itemsProcFunc>Laxap\BootstrapGrids\Controller\FlexFormController->getTwoColumnOptions</itemsProcFunc>
                            </config>
                        </TCEforms>
                    </lgCol1>
                    <lgCol2 type="array">
                        <TCEforms type="array">
                            <label>LLL:EXT:bootstrap_grids/Resources/Private/Language/locallang_db.xlf:grid.label.col2</label>
                            <config type="array">
                                <type>select</type>
                                <renderType>selectSingle</renderType>
                                <itemsProcFunc>Laxap\BootstrapGrids\Controller\FlexFormController->getTwoColumnOptions</itemsProcFunc>
                            </config>
                        </TCEforms>
                    </lgCol2>
                </el>
            </ROOT>
        </largeDevices>

Но, похоже, EXT:gridelements обрабатывает FlexForm каким-то другим способом, поэтому его нельзя манипулировать с помощью TCEFORM, это не работает:

TCEFORM.tt_content.pi_flexform.gridelements_pi1.largeDevices.lgCol1.disabled = 1

1 ответ

Ключ "gridelements_pi1" неверен. Это может быть либо значение «по умолчанию», влияющее на все типы макетов элементов сетки, либо конкретный тип, который вы определили.

Так что это будет работать для примера из вопроса:

      TCEFORM.tt_content.pi_flexform.default.largeDevices.lgCol1.disabled = 1
Другие вопросы по тегам