【问题标题】:Magento: Get all shipping costs for all countries for a product in Magento backendMagento:在 Magento 后端获取产品的所有国家/地区的所有运费
【发布时间】:2011-07-12 15:22:42
【问题描述】:

我目前正在开发一个 Magento(后端)插件来为产品创建小部件。我现在花了 2 天时间尝试获取每个国家/地区的产品运费清单。

我得到了什么:

我有一个加载产品模型的后端控制器,我从这个模型中获得了我需要的所有数据。

现在的问题是获取已定义的每个国家/地区的运费清单。 我该怎么做?

对不起,我不能更具体,因为我没有任何工作.. :(

感谢您的每一个帮助! MRu

[编辑2]

我现在尝试使用 ʍǝɥʇɐɯ 在他的回答评论中发布的前面示例 (http://www.magentocommerce.com/magento-connect/EcomDev/extension/3860/ecomdev_productpageshipping)。 但这不起作用,我总是得到一个空数组。

$addToCartInfo = array("estimate"=> array("country_id"=> "US"), "product"=> "1", "related_product" => "", "qty" => "1" ); 
$product->setAddToCartInfo($addToCartInfo);

$quote = Mage::getModel('sales/quote');
$shippingAddress = $quote->getShippingAddress();
$shippingAddress->setCountryId('US');
$shippingAddress->setCollectShippingRates(true);


$request = new Varien_Object($addToCartInfo);
$request->setQty(1);

$quote->addProduct($product, $request);
$quote->collectTotals();

$rateResult = $shippingAddress->getGroupedAllShippingRates();

这个例子中的前端和后端有什么区别导致我不能使用这个代码吗?我怎样才能在后端做到这一点?

再次感谢,MRu

【问题讨论】:

  • 你试过Mage::getModel('shipping/shipping')->collectRatesByAddress()吗?

标签: php magento backend shipping


【解决方案1】:

在 Magento 扩展的某个地方有一个模块可以做到这一点 - 也许先看看它并重用他们的代码。

【讨论】:

  • 你能记住模块的名字吗?否则可能会持续很长时间。
  • magentocommerce.com/magento-connect/EcomDev/extension/3860/… 注意提到'- 添加了“包括购物车项目”选项'
  • 我尝试复制您发布的扩展程序的代码,但这不起作用。你能看看我编辑的问题吗?
  • 我想我之前忽略了“后端”这个词——很抱歉让你误入歧途。但是,我可以与您分享这一点。打开任何运输模块的代码,它会遍历当前报价中的项目。因此,并非每件商品本身都有运费。因此,您可能希望以不同的方式解决问题,即使这意味着在 Excel 电子表格中计算运费并导入一个新属性,然后将其添加到产品网格中。
  • 难道不能在后端轻松模拟前端吗?我会用装运模块试试你的提示,但 Excel 方法对我来说是不可能的。到目前为止谢谢!
猜你喜欢
  • 1970-01-01
  • 2012-02-11
  • 2018-09-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多