registered_hooks = array(); } public function add_action( $tag, $callable, $priority = 10, $accepted_args = 1 ) { $this->registered_hooks[ $tag ][] = array( 'priority' => $priority, 'callable' => $callable, ); add_action( $tag, $callable, $priority, $accepted_args ); } public function add_filter( $tag, $callable, $priority = 10, $accepted_args = 1 ) { $this->registered_hooks[ $tag ][] = array( 'priority' => $priority, 'callable' => $callable, ); add_filter( $tag, $callable, $priority, $accepted_args ); } public function reset() { foreach ( $this->registered_hooks as $tag => $hooks ) { foreach ( $hooks as $hook ) { remove_filter( $tag, $hook['callable'], $hook['priority'] ); } } $this->registered_hooks = array(); } }