Nachdem ich mehrere Online-Beiträge zu do_action()/add_action() gelesen habe, möchte ich Ihnen kurz mitteilen, wie ich sie verstanden habe.
Hier würde ich nur von Action-Hooks sprechen, nicht von den Filtern.
do_action() : Registers an action hook
add_action() : adds a callback function to the registered hook.
Nun sind die Fragen:
1> Über add_action()/do_action() für vorhandenen Hook:
add_action( 'admin_enqueue_scripts', 'my_func');
Im obigen Beispiel ist die Callback-Funktion my_func() mit dem Hook ‘ registriertadmin_enqueue_scripts‘. Jetzt wann immer do_action(‘admin_enqueue_scripts’) Wird in Zukunft irgendwo im Code aufgerufen, würde die Callback-Funktion my_func() ausgeführt. Kurz gesagt, die Rückruffunktion wird nur ausgeführt, wenn do_action() wird genannt. Ist mein Verständnis richtig?
2> Über add_action()/do_action() für benutzerdefinierten Hook:
Stellen Sie sich nun eine Situation vor, in der ich ein neues Plugin schreibe und darin einen Aktions-Hook bereitstellen möchte. Wie würden diese beiden Funktionen in diesem Fall verwendet?
// inside my plugin code
do_action('my_custom_hook');
// inside the user code who wants to use this hook
function user_func()
{
// code ...
}
add_action('my_custom_hook', 'user_func');
Ist mein Verständnis richtig?
Ja, Ihr Verständnis ist für beides richtig …
– LoicTheAztec
6. Juli 2020 um 17:13