web-dev-qa-db-fra.com

Comment vérifier si un crochet est accroché ou non?

Par exemple:

if ( is_hooked('hook_name') ) {
  throw new \Exception('You cannot hook to a protected action.');
} else {
  do_action('hook_name');
}

Est-il possible de définir la fonction is_hooked()?

5
MinhTri

Bien sûr, cela s'appelle has_action , qui est un alias de has_filter . Usage:

if ( has_action('hook_name') ) {
  throw new \Exception('You cannot hook to a protected action.');
} else {
  do_action('hook_name');
}

Ces deux fonctions accèdent au tableau global $wp_filter qui stocke tous les filtres/actions

4
cjbj