【问题标题】:Magento Core API: listing all shipping methodsMagento Core API:列出所有运输方式
【发布时间】:2012-04-03 23:57:57
【问题描述】:

Magento Core API 中的cart_shipping.list 方法不会返回管理站点上启用的所有运输/付款方式。启用的方法是统一费率、表费率、免费送货、UPS、USPS、FedExDHL。致电cart_shipping.list 只会返回统一费率、免费送货UPS

关于为什么的任何想法?

我的主要怀疑(查看Mage_Sales_Model_Quote_Address 类的getShippingRatesCollection() 函数时)是为订单设置的送货地址用于过滤掉一些方法。但是,我不完全理解这种过滤是如何发生的,因为在前端使用相同的送货地址时不会出现这个问题(即我可以看到我希望看到的那个地址的所有送货方式)。

【问题讨论】:

  • 您确定没有“如果购物车总价 > 100 美元,此付款/送货方式可用”之类的条件吗?在管理员中检查您的付款/送货方式设置。也有可能在网站/商店级别禁用了某些方法。
  • @Zyava 在管理站点中,我只在每个方法的启用字段中选择了“是”。您可能对某些方法的条件可用性是正确的,但我不确定如何在管理员中设置这些条件。
  • 我目前遇到了和你一样的问题,伊壁鸠鲁。使用 Table Rates 运输方式和 Magento Enterprise 版本 1.11.2.0。三个工作的承运人是:flatrate、freeshipping 和 storepickup。 Epicurus,您能告诉我们哪些“子集”方法正在为您返回,哪些即使您启用了它们也看不到。您的问题中还没有此信息。另外,请务必检查前端:对您传递给 API 的产品进行检查,看看这些方法是否真的在那里启用。
  • @Norbert:您的问题可能与 Table Rates 运输方式 (magentocommerce.com/knowledge-base/entry/…) 的配置有关吗?

标签: magento


【解决方案1】:

至少在我的情况下,我已经找到了解决这个问题的有效方法。

问题是我没有在任何用于创建购物车的方法中指定商店 ID,并在调用 cart_shipping.list 之前指定其产品和送货/账单地址。

这些方法是:cart.createcart_customer.setcart_customer.addressescart_product.add。它们都将 Store Id 作为可选参数。指定此商店 ID 会导致在前端显示相同产品和送货地址的所有送货方式。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-22
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    相关资源
    最近更新 更多