Naše kontakty
V OpenCarte je event system (systém udalostí) kľúčovým spôsobom, ako upravovať alebo rozširovať funkcionalitu bez zásahu do core kódu. onAfter (resp. akákoľvek udalosť s týmto názvom) funguje ako hook po vykonaní určitej akcie – umožní ti „počúvať“ a vykonať vlastný kód po určitej udalosti.
OpenCart eventy majú podobu:
bash action/event/trigger
Napríklad:
php $this->event->trigger('catalog/controller/product/product/after', [&$route, &$args, &$output]);
Tento konkrétny príklad hovorí:
php $this->model_setting_event->addEvent('moj_modul_after_product', 'catalog/controller/product/product/after', 'extension/module/moj_modul/onAfterProduct');
Tým hovoríš: Až bude dokončený controller catalog/controller/product/product, spusti metódu onAfterProduct.
php public function onAfterProduct(&$route, &$args, &$output) { // $output je HTML stránka, ktorú môžeš upraviť $output .= '<!-- Môj kód po načítaní produktu -->'; }
&$output je dôležitý, pretože umožňuje upraviť výsledný HTML výstup alebo obsah vrátený funkciou.