Magento:如何检查是否使用了onepage或multipage checkout?

时间:2012-06-11 14:15:26

标签: magento checkout

我有一个附加到completeOrder事件的触发器,因此通过$ observer对象,我可以获取报价和当前订单。

问题是 - 如何以100%的准确度检查用户是使用单页结账还是多页结账?

如果他使用多页,则会创建2个或更多订单,我的触发器会运行几次。

检查内容的一种方法是检查引用对象的地址总数

  $quote->getAllAddresses();

所以,如果它有超过2个地址(超过1个计费和1个发货),那么它是多页,否则是一页。 问题是如果通过多页结帐流程,其中一个订单是虚拟的,另一个订单是常规订单。虚拟订单没有地址,因此在这种情况下我的条件不起作用。

1 个答案:

答案 0 :(得分:0)

如果您可以获得当前订单,则获取订单报价对象 然后,您可以使用$quote->getIsMultiShipping()