Neu Mehrfaches triggern des HOOK_TOOLSGLOBAL_INC_BERECHNEVERSANDPREIS Hooks

AlexKimmig

Neues Mitglied
25. März 2022
4
0
Hallo miteinander,

ich arbeite aktuell an einer Entwicklung eines JTL- Shop 5.0 Plugins.
Dabei verwenden wir in der Bootstrap.php den Dispatcher um uns gegen diverse Hooks zu subscriben.

Die meisten Hooks (wie der HOOK_SMARTY_OUTPUTFILTER) werden einmalig beim entsprechenden Triggerpunkt ausgeführt.
Nun zum Problem: Die Hooks HOOK_TOOLSGLOBAL_INC_BERECHNEVERSANDPREIS & HOOK_CALCULATESHIPPINGFEES werden z.B. im Bestellvorgang pro Versandart 3x getriggered (Siehe Screenshot).

Der Hook ist wie im zweiten Screenshot gezeigt implementiert.

Das führt dann dazu, dass unser Plugin im Hintergrund unnötig viele API-Calls gegen den Versandanbieter stellt.

Woher kommt dieses Verhalten und gibt es eine entsprechende Konfiguration / Methodik damit der HOOK nur 1x ausgelöst wird?

Vielen Dank und beste Grüße
 

Anhänge

  • hooks.PNG
    hooks.PNG
    302 KB · Aufrufe: 8
  • implementation.PNG
    implementation.PNG
    25,5 KB · Aufrufe: 8

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
1.367
343
Halle (Saale)
Ein Hook wir halt so oft aufgerufen wie die ihn ausführende Methode/Funktion - HOOK_TOOLSGLOBAL_INC_BERECHNEVERSANDPREIS also immer bei Aufruf von ShippingMethod::calculateShippingFees(). Da diese Methode oft aufgerufen wird (tlw. in einem Loop, z.B. für alle vorhandenen Versandarten), wird auch der Hook oft getriggert - ich verstehe also ehrlich gesagt deine Frage nicht ganz.
 

AlexKimmig

Neues Mitglied
25. März 2022
4
0
Ein Hook wir halt so oft aufgerufen wie die ihn ausführende Methode/Funktion - HOOK_TOOLSGLOBAL_INC_BERECHNEVERSANDPREIS also immer bei Aufruf von ShippingMethod::calculateShippingFees(). Da diese Methode oft aufgerufen wird (tlw. in einem Loop, z.B. für alle vorhandenen Versandarten), wird auch der Hook oft getriggert - ich verstehe also ehrlich gesagt deine Frage nicht ganz.
Hallo,

Wie gesagt ist es mir durchaus klar, dass der Hook für jede Versandart getriggered wird. Jedoch ist es mir nicht klar warum der selbe Hook pro Versandart Im Checkout jeweils 3x angestoßen wird. Warum sollten für eine Versandart 3x die Versandkosten ermittelt werden?
Dann benötigt man einen Cache, damit die Konsumierte API nicht unnötigerweise belastet wird.
Ist die Frage damit klarer?
 

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
1.367
343
Halle (Saale)
Naja, wenn ich mir mal die Calls angucke, wird das bei der Liste der verfügbaren, der günstigsten und der bevorzugten Versandarten aufgerufen. Das sind schonmal 3.
Und ggf. nochmal bei der abschließenden Prüfung versandartenKorrekt(). Kann also durchaus angehen, dass das mehrfach für dieselbe Methode getriggert wird.
Da wirst du also dann nicht drum herum kommen, dir die Ergebnisse deines API-Calls ggf. irgendwo zwischenzuspeichern und anschließend zu prüfen, ob du ihn für diese Methode schon ausgeführt hast.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu SQL Code zur Ausgabe des Verkaufspreis je Kundengruppe User helfen Usern 1
Erzeugung des Barcodes für die Gebinde EAN JTL-Wawi 1.9 3
Gelöst iMin Swan 1 Pro Kundendisplay zeigt nur verkleinerte 1:1 Kopie des kompletten Hauptbildschirmes JTL-POS - Fragen zu Hardware 3
Teile des Artikelnamens Farblich hervorheben JTL-Wawi 1.9 2
Neu Update auf 1.9 - wo sind die Kommentarfelder des Artikels geblieben? Eigene Übersichten in der JTL-Wawi 1
Neu Nach dem entfernen des PayPal Checkout werden keine Zahlungsarten anderer Anbieter angezeigt. JTL-Shop - Fehler und Bugs 4
Fehler beim Update des Mandaten easybusiness JTL-Wawi 1.9 2
Neu Auflösung & Skalierung des Userinterfaces User helfen Usern - Fragen zu JTL-Wawi 1
Retoure - Buchen des Artikels JTL-Wawi 1.7 7
Auswahlmöglichkeiten des Feldes "Anrede" in Shop und WaWi erweitern JTL-Wawi 1.8 0
Neu Farben des Coockie Banners anpassen Allgemeine Fragen zu JTL-Shop 1
Neu Bei Verkaufskanaldeaktivierung eines Child-Artikels löscht Prestashop Connector 2.0.0 den Parent-Artikel samt aller Child-Artikel des Parents PrestaShop-Connector 0
Neu GPSR: Kontaktdaten des Herstellers/Importeurs hinterlegen Amazon-Lister - Ideen, Lob und Kritik 6
Neu Fehler "Die eingegebenen Variantenmerkmale stimmen nicht mit den Variantenmerkmalen der Varianten des Artikels überein." eBay-Anbindung - Fehler und Bugs 0
Neu Fehler beim Update des Shops - DB Migration Installation / Updates von JTL-Shop 1
Neu Inhalt des DHL-Fehleretiketts bearbeiten User helfen Usern - Fragen zu JTL-Wawi 2
Neu Berechnung des durchschnittlichen EK Preises User helfen Usern - Fragen zu JTL-Wawi 1
Wichtig 👉 Sicherheitslücke in JTL-Shop 5 bis 5.3.2 (betr. alle Versionen des Shopsystems) News, Events und Umfragen 17
Beantwortet Versandbestätigung mit Tracking für einzelnen Kunden (bei Nutzung des JTL-FFN) JTL-Workflows - Ideen, Lob und Kritik 2
Neu Farbe des mobilen Headers lässt sich nicht ändern Templates für JTL-Shop 1
Wichtig 👉 Abkündigung des Servicedesk in JTL-Wawi zum 31.01.2025 Releaseforum 0
Neu Nach Umzug des Shops auf ein Unterverzeichnis gehen die Shop-Links nicht mehr Allgemeine Fragen zu JTL-Shop 1

Ähnliche Themen