在我的自定义模块中,我想在结帐过程的各个阶段完成时采取一些操作。我正在使用Magento事件调度系统来实现这一点。不幸的是,核心产品中的事件调度系统似乎有些杂乱无章。 一个结账阶段是用户输入他们的账单地址。当使用一个页面结帐方法,我能参加这次活动的观察员:Magento多文档结帐系统中的事件派发
controller_action_postdispatch_checkout_onepage_saveBilling
我不知道这是表示一个帐单地址已进入了最好的事件,但它似乎工作正常。
当使用multishipping结帐过程时,我看不到我可以听的相关事件。帐单地址和付款方式在同一结帐阶段。最相关的事件中,我能想出是:
controller_action_postdispatch_checkout_multishipping_overview
这也是射击下订单。
有没有更好的方法来做到这一点?
谢谢。
这就是我在做什么,但我再往前走一步,也看看事件发生的是什么阶段。例如,'controller_action_postdispatch_checkout_multishipping_billing'看起来很有趣,但实际上,当从结帐过程的“送货信息”阶段点击“继续记帐信息”按钮时,即在**账单地址阶段之前**时,会触发该按钮。在输入账单地址的阶段(“账单信息”阶段),最好的候选人似乎是我在文章中提到的那个。 – user265330 2012-01-03 15:37:51
嘿,我的坏,很抱歉假设你还没有这样做。我认为,根据在这个过程中被解雇的事件的数量,我认为那里必须有一个满足你的需求。你是说,举例来说,controller_action_predispatch_checkout_multishipping_addressesPost与controller_action_postdispatch_checkout_multishipping_overview相关的用途不大? – kalenjordan 2012-01-04 05:24:09
你好。当从“送货信息”阶段移动到“账单信息”阶段时,会触发controller_action_predispatch_checkout_multishipping_addressesPost事件,但我正在查找何时用户在结账过程中完成了其结算地址,这将从“结算信息”信息“阶段进入”下订单“阶段。 – user265330 2012-01-04 13:07:01