Hooks w PrestaShop 1.7 i 8: Czym są i jak ich używać

Chcesz tworzyć moduły dla PrestaShop lub zmienić sposób działania platformy? Następnie musisz wiedzieć o hooks PrestaShop.

Hooks - niezbędne narzędzia, które pozwalają dostosować PrestaShop bez edycji jego rdzenia.
Chcielibyśmy przedstawić Państwu koncepcję haków i jak ich prawidłowo używać z PrestaShop 1.6, 1.7 i najnowszą wersją - PrestaShop 8. Odkryjesz, jak:

  • Pojawia się więcej szczegółów w bloku haka.
  • Uruchom skrypt za pomocą metody hakowania.
  • Zaprojektuj swoje dane wyjściowe za pomocą szablonu haka.
  • Połącz hak z bieżącym motywem.

Dowiesz się również, jak pozycjonować, opisywać, instalować, odinstalowywać i ustawiać domyślną wartość haków.

PrestaShop Hooks

Czym są hooks w PrestaShop 1.7 i PrestaShop 8?

Definicja haków

W opisie PrestaShop hooki to predefiniowane lokalizacje w obrębie platformy, w których można wstawić własny skrypt lub moduły. Gdy hak jest wywoływany lub wykonywany, uruchamiany jest również skrypt lub moduł skojarzony z tym hakiem.

Lista haków dostępnych w PrestaShop.

PrestaShop oferuje szeroki wybór dostępnych hooks. W zależności od wersji platformy lista może być inna.

Aby wyświetlić listę haków dostępnych w PrestaShop, przejdź do dokumentacji.

Możesz również odwiedzić zakładkę Pozycje wyświetlaną w Panelu administracyjnym w lewej kolumnie, aby zobaczyć haki przechowywane w bazie danych.

Jak działają hooks w PrestaShop?

Kiedy hak jest wywoływany lub wykonywany, PrestaShop szuka dowolnego powiązanego modułu lub kodu i, jeśli jest obecny, uruchamia go. Hooks są skutecznie używane do edycji lub dodawania zawartości określonej strony lub elementu.

Na przykład hak umożliwia dodanie obrazu do nagłówka lub wyświetlenie produktu w stopce strony.

Jak używać hooks?

Jak stworzyć hook?

Utworzenie haka w PrestaShop 1.7 lub 8 wymaga manipulowania kodem PHP. W nowym lub istniejącym module utwórz hak, definiując go w tablicy:

$this->registerHook('actionValidateOrder');

Gdzie "actionValidateOrder" jest nazwą haka. Po zdefiniowaniu haka można dołączyć do niego funkcję:

Hooks in PrestaShop

Używamy tego haka wewnątrz naszego modułu DocumenThemix .

Jak zaktualizować hook?

Aktualizacja haka wymaga zmodyfikowania modułu skojarzonego z tym punktem zaczepienia. Aby edytować hak w pliku konfiguracyjnym modułu, zlokalizuj go i wprowadź wymagane modyfikacje skojarzonej funkcji.

Jak skomentować hook?

Po prostu dodaj komentarz nad skryptem powiązanym z hakiem. 

Czasami możesz zapomnieć, co robi hak lub dlaczego go tam umieściłeś. Nie martw się, wszyscy tam byliśmy.

Comment on a hook

Dlatego możesz dodawać komentarze do swoich hooks, aby pobudzić pamięć lub wyjaśnić swój geniusz innym programistom, którzy mogą natknąć się na Twój fragment.

Zaufaj nam, docenią to.

Przykłady haków: Wyświetlanie i wysyłanie wiadomości e-mail.

Jak wyświetlić moduł za pomocą haków?

Załóżmy, że masz moduł niestandardowy, który wyświetla listę producentów w biurze frontowym. Aby wyświetlić ten moduł, możesz go wstawić za pomocą haka "displayHome":

$this->registerHook('displayHome');

Następnie można dołączyć moduł za pomocą następującej funkcji:

Hook display

Jak wyświetlać produkty?

Możesz użyć hooka "displayProductAdditionalInfo", aby wyświetlić informacje o produkcie:

$this->registerHook("displayProductAdditionalInfo");

Do dołączenia informacji można użyć następującej funkcji:

public function hookDisplayProductAdditionalInfo($params)
{
   Wyświetl informacje o produkcie tutaj
}

Jak wysłać wiadomość e-mail za pomocą hooks?

Hook "actionEmailSendBefore" może służyć do zmiany treści wiadomości e-mail przed jej wysłaniem:

$this->registerHook('actionEmailSendBefore');

Można do tego użyć następującej funkcji:

public function hookActionEmailSendBefore($params)
{
   // Twoja funkcja zmiany treści wiadomości e-mail tutaj
}

Zaawansowany w zakresie haków PrestaShop ze sterownikiem i modułami.

Jak działają haki ze sterownikami w PrestaShop?

W PrestaShop kontrolery obsługują routing stron i służą jako zaplecze platformy. Haki mogą służyć do zmiany zachowania lub zawartości kontrolera. Na przykład hak "displayAdminOrder" służy do edycji zawartości strony zamówienia administracyjnego PrestaShop .

Jak zezwolić modułom na modyfikację haka?

Moduły w PrestaShop mają możliwość edycji lub rozszerzania haków. Pozwala to na większą personalizację i elastyczność.

Użyj następującego skryptu:

$this->hooks_executed[nazwa_$hook] = true;
Hook::exec($hook_name, $params, $this->id_module);

Jak przedłużyć haki w PrestaShop za pomocą modułu?

Najpierw musisz utworzyć własny hak w pliku konfiguracyjnym modułu z nazwą hooka:

$this->registerHook('myCustomHook');

Następnie można zdefiniować zachowanie lub zawartość tego haka w następującej funkcji:

public function hookMyCustomHook($params)
{
   Wyświetlanie niestandardowej zawartości tutaj
}

Cóż, to tyle na temat naszego podsumowania hooks! To wszystko na razie, ludzie. Nauczyłeś się podstaw haków i tego, jak sprawić, by działały dla Ciebie.

Teraz idź tam i podłącz swój sklep PrestaShop z niesamowitymi dostosowaniami.

Pamiętaj, aby zapoznać się z dokumentacją i panelem konfiguracji dla konkretnej wersji PrestaShop, aby uzyskać pełną listę dostępnych Hooks PrestaShop.

Get this Advanced Cart Rules module

New module.

Xleft module

Xleft shows customers how much more they need to spend to get free shipping in real time.

Aktualizacja najnowszych modułów!

Age Restriction - 18+ ⊙
Rozwiąż niektóre problemy z wyświetlaniem na urządzeniach przenośnych.


Newsletter Popup v3.2.2
Edycja świąteczna, aby zwiększyć sprzedaż.


Trusty v1.4.7 ⊙
Kompatybilny zarówno z PrestaShop 1.7, jak i PrestaShop 8.

PrestaSOO team
Wszystko, czego potrzebujesz, aby zarabiać na życie wykonując pracę, którą kochasz.

Odkryć

To mądra inwestycja

Moduły PrestaShop, które stworzyliśmy jako pierwsze, aby rozwiązać problem naszego własnego biznesu - strona e-Commerce. Oznacza to, że są bardzo przydatne w poważnym biznesie. Jeśli cenisz swoją usługę internetową, te moduły są mądrą inwestycją.
Sarah Reeves, Programista aplikacji @ PrestaSOO
Wykonane z w Paris i Hanoi
PrestaSOO © 2024. Wszelkie prawa zastrzeżone. // Polityka prywatności Warunki usługi