Hooks, Filter, Actions - Was zum Geier ist das?
Kurze Erläuterung was Hooks, Filter und Actions sind.
Folien des Vortrags vom Wordpress Meetup Hannover vom 23. Mai 2013.
Sessions aufzeichnen mit möglichst wenig Aufwand - Stand Oktober 2016
Wordpress - Hooks, Filter, Actions - Was zum Geier ist das?
1. Hooks, Filter, Actions -
Was zum Geier ist das?
WP Meetup Hannover, 23. Mai 2013
Frank Staude <frank@staude.net>
Donnerstag, 26. September 13
2. Schon mal gehört?
• Dann Hook dich da rein!
• Das kannst du per Filter noch ändern
• Da kann man „von außen“ noch ändern/manipulieren.
• Das kannst du per Plugin „steuern“
Donnerstag, 26. September 13
3. Hooks?
Ein Hook bezeichnet in der Informatik eine Schnittstelle, mit der
bestehender Programmcode durch dritte erweitert werden kann.
Über einen Hook (deutsch Haken) kann man sich in Wordpress an
definierten Stellen “einhaken” und dort eigenen Programmcode ausführen.
Es ist also möglich Wordpress zu manipulieren, ohne den eigentlichen Code
zu verändern. Das bedeutet, das die Eingiffe die man vorgenommen hat,
auch eine aktualisierung des Wordpress Core überstehen.
Es gibt zwei Arten von Hooks in Wordpress
• Actions
• Filter
Donnerstag, 26. September 13
4. Actions ?
• Ein Action Hook sagt: Eine bestimmte Aktion wird jetzt ausgeführt.
• Hooks werden von den Funktionen aufgerufen
• do_action()
• do_actions_ref_array()
Donnerstag, 26. September 13
5. Actions ?
• do_action() ruft Funktionen auf, die sich auf die jeweilige Aktion
registriert haben.
• Von do_action() aufgerufene Funktionen beeinflussen sich nicht
gegenseitig.
• Registrierung via add_action()
• Beispiel: header template, wp_head()
Donnerstag, 26. September 13
6. Filter ?
• Ein Filter Hook sagt: Hier ist Content, mach damit etwas, bevor ich ihn
weiter verwende.
• Filter werden von der Funktion aufgerufen
• apply_filters()
• Filter bilden „Ketten“, die Rückgabe der ersten Funktion ist die
Eingabe der zweiten Funktion usw.
Donnerstag, 26. September 13
7. Filter ?
• Apply_filters() ruft Funktionen auf, die sich auf die jeweilige Aktion
registriert haben.
• Von apply_filters() aufgerufene Funktionen bilden Ketten. Die
Rückgabe der ersten ist die Eingabe der zweiten Funktion usw.
• Registrierung via add_filter()
• Beispiel: index template, the_title()
Donnerstag, 26. September 13
8. Wie finde ich Hooks?
• Code von Core/Plugins nach do_action(),do_actions_ref_array() und
apply_filters() durchsuchen.
• Codex Filter Referenz: http://codex.wordpress.org/Plugin_API/
Filter_Reference
• Codex Action Referenz: http://codex.wordpress.org/Plugin_API/
Action_Reference
• Adam Browns WP Hook Database: http://adambrown.info/p/
wp_hooks
Donnerstag, 26. September 13