Вы можете эмулировать хуки в своем собственном PHP-проекте:
1) Создайте и включите следующий класс:
class Hooks {
private static $actions = array(
'ev_after_user_create' => array(),
'ev_after_user_profile_update' => array()
);
public static function apply($hook, $args = array()) {
if (!empty(self::$actions[$hook])) {
foreach (self::$actions[$hook] as $f) {
$f($args);
}
}
}
public static function add_action($hook, $function) {
self::$actions[$hook][] = $function;
}
}
Определите там название предпочитаемых хуков.
2) Теперь вы можете использовать хуки в вашем коде, например, для do smth после создания нового пользователя (пример):
//here is going any code which creates new user
//hooks
Hooks::apply('ev_after_user_create', array('user_id' => $new_user_id));
3) Определить действия хуков следующим образом:
Hooks::add_action('ev_after_user_create', function($args) {
if (Router::$application === 'front') {
require_model('users-data');
$ud = new MUsersData(8);
$ud->update_data($ud->create_page(), $args, 'id');
}
});
Любой код действий хуков должен быть определен ДО кода, где требуется его действие !