ext_tables.php (Deprecated)
Deprecated since version 14.3
Using the ext_ file in extensions is deprecated.
ext_tables.php
-
- Scope
- extension
- Path (Composer)
- packages/my_extension/ext_tables.php
- Path (Classic)
- typo3conf/ext/my_extension/ext_tables.php
This file is deprecated. It was historically used to register backend modules, page doktypes, user settings, and other runtime configuration. All of these use cases now have dedicated alternatives in modern TYPO3.
Migration: Move registrations from ext_tables.php
Move all registrations from ext_tables.php to the appropriate
configuration files.
User settings previously registered via
Extension in
ext_tables.php should now be added via
Extension in
Configuration/TCA/Overrides/be_users.php.
Before:
$GLOBALS['TYPO3_USER_SETTINGS']['columns']['myCustomSetting'] = [
'type' => 'check',
'label' => 'LLL:EXT:my_ext/Resources/Private/Language/locallang.xlf:myCustomSetting',
];
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addFieldsToUserSettings(
'myCustomSetting',
'after:emailMeAtLogin'
);
After:
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addUserSetting(
'myCustomSetting',
[
'label' => 'LLL:EXT:my_ext/Resources/Private/Language/locallang.xlf:myCustomSetting',
'config' => [
'type' => 'check',
'renderType' => 'checkboxToggle',
],
],
'after:emailMeAtLogin'
);
Page doktypes previously registered via
Page in
ext_tables.php should now use the TCA option
allowed in Configuration/TCA/Overrides/pages.php.
See also
Before:
\TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(
\TYPO3\CMS\Core\DataHandling\PageDoktypeRegistry::class
)->add(116, [
'allowedTables' => ['tt_content', 'my_custom_record'],
]);
After:
$GLOBALS['TCA']['pages']['types']['116']['allowedRecordTypes'] = [
'tt_content',
'my_custom_record',
];
Once all registrations have been moved and TYPO3 V13 support is dropped, the
ext_tables.php file can be removed from the extension.