Hooks erlauben es Ihnen, Ihren eigenen Code auszuführen wenn bestimmte Seiten in sourceDESK aufgerufen werden oder Aktionen stattfinden.
Hooks erstellen
Hooks können nur innerhalb von Addons erstellt werden. Hierzu bekommt das Addon eine Methode hooks(), die ein Array der auszuführenden Addons zurückgibt:
public function hooks() { return [ ["HookPoint1", "hook1", 10], ["HookPoint2", "hook2", 10], ]; }
Hierbei bezeichnet HookPoint1 den gewünschten Hook (siehe untenstehende Liste), hook1 die aufzurufende Methode des Addons und 10 die Priorität.
Der Hookname ist nicht case-sensitiv, die Groß-/Kleinschreibung kann also vernachlässigt werden. Die aufzurufende Methode muss public sein und genau ein Argument akzeptieren:
public function hook1($par) { // Ihr Hook-Code }
Die nicht-negative Priorität legt fest, in welcher Reihenfolge mehrere Methoden für einen Hook ausgeführt werden (systemweit über alle Addons). Eine niedrige Priorität wird früher ausgeführt. Wenn zwei Methoden für einen Hook mit der gleichen Priorität definiert werden, wird die zuerst definierte Methode zuerst ausgeführt (Addons werden alphabetisch geladen).