我在一家商店工作,它有两种产品:易腐烂的食品和普通商品。食品必须始终通过FedEx连夜运输,其他商品必须始终通过USPS运输。如果有人订购了这两个类别的产品,则必须单独发货。
您是否知道现有的模块或配置设置可以实现这一点?
如果不是,听起来像是一个自定义模块是另一种解决方案。在这种情况下,最好的方法是什么?我认为这会将订单分成多个地址的发货,使用相同的地址,但不同的发货方式。不幸的是,我不确定如何通过编程来做到这一点,所以任何教程/示例/资源都会非常感谢。
发布于 2011-06-29 06:45:08
也许处理这一问题的最明智的方法是为每个产品类型创建两个订单,每个订单使用不同的承运商发送到相同的地址。从商店跟踪的角度来看,这也更有意义,因为您可以相互独立地处理彼此。
为了让你走上正轨(因为Magento本身在这一部分特别神秘),你应该阅读同一作者Programatically create customer and order in Magento with full blown one page checkout的Inchoo programmatically create order in Magento帖子。
基本上,我所看到的是:
你可能不得不扩展一些控制器,或者以非标准的方式来做,并使用帮助器函数,为此,困难的部分将是在你的订单流程中集成支付/发货模块。按照这种方式,您将创建完整的结帐流程,因为Magento提供的一页结帐不会真正起作用,而且由于它使用AJAX的方式,工作起来太痛苦了。
此外,另一种选择是连接到Magento的预创建订单事件,并使用已经定义的订单数据创建订单,将其分成两个订单,但这是我目前从未听说或看到实现的东西,所以可以说你不得不“蒙着眼睛”来实现它。
一种更简单的方法是使用自定义字段来定义产品的发货方式,这样您只需添加该字段,而无需关心自定义订单。你只是对此做出反应,然而跟踪将变得几乎不可能。
发布于 2011-07-01 22:18:44
重写免费送货模块。
您可以设置一个适用于某些产品的销售规则,并将其设置为“免费发货”,而将其他产品留给您选择的主要发货提供商。
你需要看看这是如何工作的,然而,重点是Magento确实有一些内置的东西,将订单分成两个发货类别,尽管只有一个关于免费发货的销售规则。但你有源代码...
https://stackoverflow.com/questions/6508767
复制相似问题