Prestashop

Jak działają hacki w prestashop

Haki w Prestashop (z angielskiego hooks) służą do wyprowadzania wyników modułu w określonym miejscu na stronie. Może to być: numer telefonu w nagłówku witryny lub blok “Popularne elementy” w lewej kolumnie.

Jako przykład rozważ podstawowe haki, w wersji 1.6.x są one nazwane i zlokalizowane zgodnie z poniższym schematem:

Możesz także użyć mechanizmu haka jako obsługi zdarzeń. Na przykład, aby zarejestrować wizytę gościa na stronie głównej.

Używanie haków w module

W tym celu w klasie modułu tworzona jest publiczna metoda, zaczynająca się od “hook” i zawierająca nazwę hook. Na przykład, aby wyświetlić informacje w lewej kolumnie, kod będzie wyglądał następująco:

  funkcja publiczna hookDisplayNameOfHook ($ params)
 {
 // Kod haka.
 }

Do metody przekazywana jest tylko jedna zmienna, zawierająca tablicę parametrów wysyłanych do haka.

Aby wywołać metodę hook, musisz ją zarejestrować przy pomocy registerHook (). Rejestracja jest zwykle wykonywana podczas instalacji modułu.

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

Po odinstalowaniu modułu PrestaShop odinstaluje tę rejestrację.

Korzystanie z haków w kontrolerze

Aby wywołać hak w kontrolerze, wystarczy użyć jego nazwy z Hook :: exec ().

  Hook :: exec ('NameOfHook', $ params);

Dodawanie haka

Jeśli potrzebujesz niestandardowego haka, możesz go utworzyć podczas instalacji modułu.

  public function install ()
 {
 $ this-> registerHook ('CustomHook');
 }

Dodaj tę samą funkcję do modułu:

  funkcja publiczna hookCustomHook ()
 {
 // Hook code
 }

W odpowiednim miejscu w szablonie wstawiamy kod

  {hook h = 'CustomHook'}
0 Komentarze
Udostępnij

Prestashop Developer