bitpatroon / typo3_hooks
扩展,方便在您自己的代码中添加钩子。
v1.3.1
2021-04-19 08:24 UTC
Requires
- typo3/cms-core: >=7.6.0 < 10.9.99
README
TYPO3的钩子机制
使用方法
processHook
要调用钩子,只需在您的代码中的任何类中添加以下代码。
\Bitpatroon\Typo3Hooks\Helpers\HooksHelper::processHook(<class>, <hookname>, [<params>]);
- 类(I)可以是实例、静态引用或类名,例如。
- $this
- self
- \VENDOR\CALLING_HOOK_CLASS::class
- 钩子名称(II)是钩子的名称。
- 参数(III)是一个引用传递的数组,包含钩子的值。
注册钩子
在您的或任何localconf.php文件中添加钩子。
$GLOBALS['TYPO3_CONF_VARS']['SYS']['Objects'][\VENDOR\CALLING_HOOK_CLASS::class] = [
'className' => \VENDOR\CALLED_CLASS::class
];
- CALLING_HOOK_CLASS是类名,如(I)中指定。
- CALLED_CLASS是处理钩子的类名
具有钩子的类
添加以下代码的TYPO3类CALLED_CLASS。
namespace VENDOR;
class CALLED_CLASS
/**
* Hook
* @param array $params The parameter Array
* @param object $ref The parent object
*/
public function MyHook(&$params, $ref)
{
}
}
注意:$params是按引用传递的。更改内容会影响原始数组。$ref是调用类。参见(I)。
注意:不要忘记重置缓存!