请注意,这个问题是关于运费,而不是价格.有一个重要的区别,即商店所有者对运输方法的收费是多少,而不是客户支付的$$费用.
该shipping_tablerate数据库表包括cost字段,其在填充Mage_Shipping_Model_Carrier_Tablerate对象的过程中collectRates的方法.但是,该字段在堆栈中的任何其他位置都不可访问,例如从引号的地址.
我需要在购物车页面上访问该值,除了实例化Mage_Shipping_Model_Rate_Request要传递的对象之外,我无论如何都找不到它collectRates().鉴于数据已从表中加载并且应该可访问,这似乎是不必要的低效率.
我已经尝试过观察<shipping_carrier_tablerate_load/>事件,但似乎_load没有为该模型抛出事件.
我也试过从报价中获取汇率:
$quote = Mage::getSingleton('checkout/cart')->getQuote();
$address = $quote->getShippingAddress();
$rate = $address->getShippingRateByCode($code ='tablerate_bestway');
Run Code Online (Sandbox Code Playgroud)
我可以看到计算结果price,但是cost在该模型中不存在.
在这个阶段,我的想法已经不多了.任何建议都感激不尽!
谢谢,乔纳森