PrestaShop 1.7 bietet bereits jede Menge Hooks an. Bei der Template und/oder Modulentwicklung für PrestaShop benötigt man aber immer wieder neue bzw. eigene Hooks um das gewünschte Ergebnis zu erzielen. Und da dies bei fast jedem unserer Projekte benötigt wird möchten wir euch zeigen wie ihr ganz einfach eigene Hooks erstellen und integrieren könnt

PrestaShop 1.7 bietet dabei mehrere Möglichkeiten einen Hook zu erstellen / zu registrieren.

1.) Direkt in der Datenbank
Für alle die SQL lieben gibt es eine einfache SQL Anweisung:

INSERT INTO `ps_hook` (`name`, `title`, `description`) VALUES ('NameOfHook', 'The name of your hook', 'This is a custom hook!');

 

2.) über PHP
einfacher geht das ganze über PHP:

$this->registerHook('NameOfHook');

 

Wir bevorzugen die zweite Methode über PHP. Das lässt sich vor allem bei Modulen ganz einfach in den Installationsprozess des Moduls integrieren.

public function install()
{
    return parent::install() && $this->registerHook('NameOfHook');
}

Danach könnt ihr im Modul euren Hook ganz einfach aufrufen

public function hookDisplayNameOfHook($params)
{
    // Dein Code hier
}

Im Template (Bsp. header.tpl) verwendet ihr einfach den Hooknamen für den Aufruf.

{hook h='displayNameOfHook'}

Zudem könnt ihr hier einfach ein Modul direkt ausführen.

{hook h='displayNameOfHook' mod='mymodule'}