V Prestashopu 1.4 bylo nutné vytvářet hooky pomocí dotazu do databáze ('ps_hook' tabulka) a vytvořit override pro FrontController.php. Od verze 1.5 je možné vytvořit hook snadno přímo v modulu a použít ho kdekoliv v modulu nebo šabloně. 

Nejprve je potřeba hook zaregistrovat pomocí funkce install. Tento modul například bude používat výchozí hook 'leftColumn' a zaregistruje také nový vlastní hook 'myCustomHook': 

public function install() { if (!parent::install() || !$this->registerHook('leftColumn') || !$this->registerHook('myCustomHook')) return false; return true; } 

 

Poté musíte vytvořit funkci která definuje co bude tento hook dělat, v následujícím případě zobrazí obsah souboru nameofmynewmodule.tpl: 

public function hookMyCustomHook($params) { return $this->display(__FILE__, 'nameofmynewmodule.tpl'); } 

 

Nyní můžete následujícím kódem zobrazit obsah tohoto souboru kdekoliv v šabloně, například v hlavičce - header.tpl 

{hook h='myCustomHook'} 

Comments