ModifyClearCacheActionsEvent

New in version 11.4.

The ModifyClearCacheActionsEvent is fired in the ClearCacheToolbarItem class and allows extensions to modify the clear cache actions, shown in the TYPO3 backend top toolbar.

The event can be used to change or remove existing clear cache actions, as well as to add new actions. Therefore the event also contains, next to the usual “getter” and “setter” methods, the convenience method add for the cacheActions and cacheActionIdentifiers arrays.

Registration of the event in the Services.yaml:

MyVendor\MyPackage\Toolbar\MyEventListener:
  tags:
    - name: event.listener
      identifier: 'my-package/toolbar/my-event-listener'

The corresponding event listener class:

use TYPO3\CMS\Backend\Backend\Event\ModifyClearCacheActionsEvent;

class MyEventListener {

    public function __invoke(ModifyClearCacheActionsEvent $event): void
    {
        // do magic here
    }

}

The cache action array element consists of the following keys and values:

[
    'id' => 'pages',
    'title' => 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:flushPageCachesTitle',
    'description' => 'LLL:EXT:core/Resources/Private/Language/locallang_core.xlf:flushPageCachesDescription',
    'href' => (string)$uriBuilder->buildUriFromRoute('tce_db', ['cacheCmd' => 'pages']),
    'iconIdentifier' => 'actions-system-cache-clear-impact-low'
]

API

addCacheAction(array $cacheAction)

| Arguments: $cacheAction array | ReturnType: void |

 

setCacheActions(array $cacheActions)

| Arguments: $cacheActions string | ReturnType: void |

 

getCacheActions()

| ReturnType: array |

 

addCacheActionIdentifier(string $cacheActionIdentifier)

| Arguments: $cacheActionIdentifier string | ReturnType: void |

 

setCacheActionIdentifiers(array $cacheActionIdentifiers)

| Arguments: $cacheActionIdentifiers string[] | ReturnType: void |

 

getCacheActionIdentifiers()

| ReturnType: string[] |