.. include:: /Includes.rst.txt .. _breaking-78384: ========================================================= Breaking: #78384 - Frontend ignores TCA in ext_tables.php ========================================================= See :issue:`78384` Description =========== Frontend requests no longer load :file:`ext_tables.php` in requests. The only exception is if a backend user is logged in to the backend at the same time to initialize the admin panel or frontend editing. Impact ====== Since especially a not yet cached frontend call relies on initialized :php:`$GLOBALS['TCA']`, changes to `TCA` done within :file:`ext_tables.php` are now ignored and may fail. Affected Installations ====================== Extensions that still set, add or remove settings in :php:`$GLOBALS['TCA']` need to be adapted. The install tool provides test "TCA ext_tables check" to find such extensions. Migration ========= In :file:`ext_tables.php` neither writing directly to :php:`$GLOBALS['TCA']` and `$TCA` is allowed, nor writing indirectly via `ExtensionManagementUtility` methods. An example list of calls and their new positions: * :php:`$GLOBALS['TCA']['someTable'] = `: A full table `TCA` is added. This must be moved to :file:`Configuration/TCA/someTable.php`, see `ext:sys_note` as example. * :php:`ExtensionManagementUtility::addStaticFile()`: A static file is registered in `sys_template`. Add this to :file:`Configuration/TCA/Overrides/sys_template.php`, see `ext:rtehtmlarea` as example. * :php:`ExtensionManagementUtility::addTCAcolumns()`: Columns are added to a table. Add this to :file:`Configuration/TCA/Overrides/.php`, see `ext:felogin` as example. * :php:`ExtensionManagementUtility::addToAllTCAtypes()`: Fields are added to types. Add this to :file:`Configuration/TCA/Overrides/
.php`, see `ext:felogin` as example. * :php:`ExtensionManagementUtility::addPiFlexFormValue()`: A new flex from in `tt_content` is registered. Add this to :file:`Configuration/TCA/Overrides/tt_content.php`, see `ext:felogin` as example. * :php:`ExtensionUtility::registerPlugin()` and :php:`ExtensionManagementUtility::addPlugin`: A new type item is added to the `tt_content` table. Add this to :file:`Configuration/TCA/Overrides/tt_content.php`. .. index:: Frontend, TCA, PHP-API