Magento中是否有观察者检测结帐过程的开始?这将包括点击页面checkout/onepage/
或checkout/onestepcheckout/
。如果可能的话,我想避免重写控制器。观察员结帐开始
观察员结帐开始
回答
每个控制器操作都会导致多个目标事件,这些事件会在所有操作控制器的超类Mage_Core_Controller_Varien_Action
(link)中触发。这些事件不同地涉及从模块路由器配置+控制器路径+操作派生的“完整操作名称”,以及正在请求的路由名称。
在标准onepage结帐的情况下,完整操作名称为checkout_onepage_index
,路由名称为checkout_onepage
。
renderLayout():
controller_action_layout_render_before_'.$this->getFullActionName()
preDispatch()方法:
controller_action_predispatch_' . $this->getRequest()->getRouteName()
controller_action_predispatch_' . $this->getFullActionName()
postDispatch()方法:
controller_action_postdispatch_' . $this->getRequest()->getRouteName()
controller_action_postdispatch_' . $this->getFullActionName()
你观察将取决于OneStepCheckout模块如何捕捉路线事件。如果您需要区分路线和模块,基于getRouteName()
的事件可能会很有用。您需要测试“客户已登录”和“客户已注销”的情况。虽然predispatch事件对于涉及重定向的逻辑是首选,但您需要在重复购物车/报价+客户会话逻辑之间平衡您的需求。
看看@controller_action_predispatch_checkout_onepage_index
事件
为什么你想这样做,那么晚?根据你正在检查的内容,你可能会在将它们添加到购物车后执行此操作? checkout_cart_save_before
他们可以添加到购物车,查看错误消息,但仍然检查出来。如果条件不满足,我需要完全阻止结帐,优先选择正确的开始。 –
您可以更换购物车,因此符合条件。但是,如果您不想更换购物车,那么您应该参加派送活动 –
- 1. NSNotification观察员开销
- 2. Rxjs观察员
- 3. 对观察员的观察员观察员是否会发生任何变化?
- 4. 简单的观察到/观察员rxjs
- 5. 观察员可以观察多个可观察物吗?
- 6. onClick vs观察员
- 7. magento sales_order_place_after观察员
- 8. 可观察 - 开始发出有条件
- 9. 如何在x秒后开始观察
- 10. 观察员与触发器
- 11. 利用观察员/从rxjs
- 12. ios,healthkit观察员查询
- 13. 突变观察员--- subtree
- 14. 观察员和线程
- 15. 购物车观察员
- 16. 观察员未删除
- 17. 观察员缺少更新?
- 18. IOS注销观察员
- 19. 在观察员的rails expire_action?
- 20. 观察员?设计模式
- 21. 在Magento观察员声明
- 22. 观察员专用jgroups集群成员?
- 23. 可以观察一个班级和观察员吗?
- 24. iPhone键值观察报:观察员的UITableViewController
- 25. 如何在原始观察值平坦化为新的观察值之后再听原始观察值?
- 26. 核心价值观测添加三个观察员观察一个类值
- 27. RxJava结合观察值
- 28. RxJS结合可观察
- 29. 配料结果可观察
- 30. 在Stata总结观察
你想建立一个客户数量还是什么? –
我想先对购物车中的物品进行验证,如果验证失败,请将其重定向到购物车页面。 –
你将不得不这样做与PHP见http://www.magentocommerce.com/boards/viewthread/294962/ –