Marco Stark
Aktives Mitglied
Hallo Entwickler-Team, Hallo Felix @FMoche
der Hook HOOK_HERSTELLER_CLASS_LOADFROMDB liefert im Gegensatz zu den funktional ähnlich implementierten Hooks wie HOOK_MERKMALWERT_CLASS_LOADFROMDB und HOOK_KATEGORIE_CLASS_LOADFROMDB beim execute leider keine Instanz vom Typ "JTL\Catalog\Hersteller", sondern ein "rohes" $manufacturer Objekt zurück. Dementsprechend fehlen dem Objekt auch alle wichtigen Eigenschaften und Zugriffsmethoden der Hersteller-Klasse.
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Catalog/Hersteller.php#L196
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Catalog/Hersteller.php#L206
Frage
a) Ist es möglich, dass executeHook eine Instanz vom Typ "JTL\Catalog\Hersteller" ($this) zurück gibt?
b) Ist es möglich, dass executeHook erst nach dem internen "mapping" ausgeführt wird?
Wunschimplementierung
Schaut man sich zum Beispiel die zwei oben genannten LOADFROMDB Hooks für Merkmalwerte und Kategorien an, dann wird executeHook dort erst nach dem Mapping ausgeführt und liefernt als Parameter via $this eine Instanz von sich selbst zurück:
https://gitlab.com/jtl-software/jtl...udes/src/Catalog/Product/MerkmalWert.php#L236
https://gitlab.com/jtl-software/jtl...ludes/src/Catalog/Category/Kategorie.php#L284
VG,
Marco
PS: Post ggf. in https://forum.jtl-software.de/forums/technische-fragen-zu-plugins-und-templates.129/ verschieben.
der Hook HOOK_HERSTELLER_CLASS_LOADFROMDB liefert im Gegensatz zu den funktional ähnlich implementierten Hooks wie HOOK_MERKMALWERT_CLASS_LOADFROMDB und HOOK_KATEGORIE_CLASS_LOADFROMDB beim execute leider keine Instanz vom Typ "JTL\Catalog\Hersteller", sondern ein "rohes" $manufacturer Objekt zurück. Dementsprechend fehlen dem Objekt auch alle wichtigen Eigenschaften und Zugriffsmethoden der Hersteller-Klasse.
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Catalog/Hersteller.php#L196
https://gitlab.com/jtl-software/jtl-shop/core/-/blob/master/includes/src/Catalog/Hersteller.php#L206
Frage
a) Ist es möglich, dass executeHook eine Instanz vom Typ "JTL\Catalog\Hersteller" ($this) zurück gibt?
b) Ist es möglich, dass executeHook erst nach dem internen "mapping" ausgeführt wird?
Wunschimplementierung
Schaut man sich zum Beispiel die zwei oben genannten LOADFROMDB Hooks für Merkmalwerte und Kategorien an, dann wird executeHook dort erst nach dem Mapping ausgeführt und liefernt als Parameter via $this eine Instanz von sich selbst zurück:
https://gitlab.com/jtl-software/jtl...udes/src/Catalog/Product/MerkmalWert.php#L236
https://gitlab.com/jtl-software/jtl...ludes/src/Catalog/Category/Kategorie.php#L284
VG,
Marco
PS: Post ggf. in https://forum.jtl-software.de/forums/technische-fragen-zu-plugins-und-templates.129/ verschieben.
Zuletzt bearbeitet: