Я считаю, что отправка событий Magento - довольно неприятная область.Я полагаю, что большая часть этого разочарования, как обычно, связана с отсутствием документации.
Я бы хотел, чтобы мой код запускался на разных этапах, когда посетитель проходит через сайт.Поэтому я добавил отладку в Mage :: dispatchEvent и прошел по сайту, чтобы увидеть, какие события запускаются на каждом этапе.Их много!
Меня интересуют два места:
, когда посетитель выбрал платежный адрес и перешел к следующему этапу процесса оформления заказа..
, когда пользователь успешно размещает заказ
Для адреса выставления счета один, события, которые я видел при запуске, выглядят актуально:
controller_action_predispatch_checkout_onepage_saveBilling
controller_action_postdispatch_checkout_onepage_saveBilling
«pre» и «post» подсказали мне, что на самом деле есть событие «checkout_onepage_saveBilling», но его нет, поэтому мой первый вопрос - почему «pre» и «post»?
Для успешного заказа, события, которые выглядят хорошо:
checkout_onepage_controller_success_action
checkout_multishipping_controller_success_action
Мой второй вопрос: будут ли эти события запускаться для всех способов оплаты?Например, при использовании Google Checkout или PayPal (стандартное перенаправление) событие сработает и в какой момент?При возвращении на сайт из PayPal?Если так, то возникнет вопрос: а что, если пользователь не вернется после завершения платежа?
Спасибо за любую помощь.