W przypadku problemów z aktualizacją oferty. Tzn. Oferta nie aktualizuje się, mimo dodania zadań CRON.
Najczęściej jest to spowodowane pominięciem wewnętrznego systemu haków Prestashop
System Haków - techniczny podgląd
Prestashop implementuje system haków (system eventowy), który ma za zadanie pozwolić różnym modułom na współpracę.
Zasada działania na przykładzie aktualizacji stanów magazynowych.
-
Moduł A aktualizuje Stan magazynowy Produktu za pomocą wbudowanej funkcji
StockAvailable::setQuantity
. - Funkcja
StockAvailable::setQuantity
wywołuje hook/eventProductUpdateQuantity
-
ProductUpdateQuantity
informuje modul “nasłuchujący” tego hook’a Moduł Arena.pl o aktualizacji produktu - Moduł Arena.pl po otrzymaniu informacji, wykonuje zaprogramowane czynności - w przypadku naszego modułu, jest to aktualizacja stanu na Arena.pl
Niestety, często zdarzają się różnego rodzaju integracje, które nie korzystają z tego systemu. Co może uniemożliwość wykrycie zmiany stanu magazynowego naszemu modułowi.
Niwelacja problemu
Aby zniwelować problem, opracowaliśmy specjalny skrypt, który pozwala zasymulować dla naszego modułu aktualizację wszystkich produktów w bazie, dzięki czemu możliwa jest ich pełna integracja.
- (3) - skrypt ten pozwala oznaczyć wszystkie produkty, jako “Aktualizuj na Arena.pl”
- Uruchamiamy Aktualizację (2) dla serwerów współdzielonych lub (4) dla serwerów dedykowanych