Comment savoir L'événement Magento que nous voulons Hook [double]
-
16-10-2019 - |
Question
Cette question a déjà une réponse ici:
Ma question est simple, comment savoir si Magento que nous voulons accrocher?
Y at-il une solution simple?
La solution
Si vous voulez voir la liste des événements qui Magento vous a avez 3 options:
1) Google pour cela, il y a beaucoup de gens qui ont compilé une liste des événements Magento
2) Créer un module crochets sur l'événement controller_action_predispatch
qui est l'événement qui est appelé avant tout autre événement est appelé. Dans ce module, vous pouvez vous connecter chaque événement distribué:
Ajoutez les données suivantes sur config.xml
<events>
<controller_action_postdispatch>
<observers>
<controller_action_after>
<class>yourmodule/observer</class>
<method>hookToControllerActionPostDispatch</method>
</controller_action_after>
</observers>
</controller_action_postdispatch>
</events>
Et à l'intérieur du yourmodule / Modèle / observateur:
public function hookToControllerActionPostDispatch($observer) {
Mage::log($observer->getEvent()->getControllerAction()->getFullActionName());
}
Ce qui précède se connecter chaque événement distribué ...
3) Si vous avez accès SSH, vous pouvez exécuter la commande suivante pour obtenir un aperçu de tous les événements (et leurs fichiers où ils sont envoyés):
cd /path/to/<magento-root>
grep -nris 'dispatchEvent' app/code/
Autres conseils
Le OnepageController envoie un événement pour sauver la méthode d'expédition. Vous pouvez probablement ajouter votre logique là-dedans:
De OnepageController.php:
Mage::dispatchEvent('checkout_controller_onepage_save_shipping_method',
array('request'=>$this->getRequest(),
'quote'=>$this->getOnepage()->getQuote()));
Ainsi, votre nom d'événement est checkout_controller_onepage_save_shipping_method
.