我如何在Typo3的“清除所有缓存”操作中添加任务?
我编写了一个带有自己XML文件的前端插件,具有基于缓存的系统,我想通过使用标准按钮使管理员有可能清除此缓存。
是否有可能将用户扩展 pi1->flushAll() 注册到系统的缓存机制中?
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearCachePostProc'][] = 'EXT:yourext/class.tx_yourext_hooks.php:tx_yourext_hooks->clearCachePostProc';
接下来,在class.tx_yourext_hooks.php中创建tx_yourext_hooks类,并添加clearCachePostProc函数。
function clearCachePostProc(&$params, &$pObj) {
调试 $params 可以看到你可以在这个函数中使用哪些参数。
$GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['additionalBackendItems']['cacheActions']['custom_key'] =
'NAMESPACE_OF_CLASS';
\TYPO3\CMS\Backend\Toolbar\ClearCacheActionsHookInterface
public function manipulateCacheActions(&$cacheActions, &$optionValues) {
//YOUR CUSTOM CODE OF OVERRIDE
}