2012-11-05 61 views
1

我发现了这段老的代码,它似乎在Magento 1.6.2中完美地工作。 我的问题是,它没有显示Tax的值,它显示的值是ex。 60.0000Magento使用税和货币回显货运总计

难道它有可能让它显示与税收和货币? 或maby只是以某种方式(我已经试过这个没有运气,不管我如何把if语句放在一起..)构建一个if语句,以便如果它是60.000那么它会回显75 $?

$totals = Mage::getModel('checkout/session')->getQuote()->getTotals(); 
if(isset($totals['shipping'])) 
print $totals['shipping']->getData('value'); 

回答

3

为了让您的购物车总(假设客户登录或输入航运信息)

$cart = Mage::getModel('checkout/session')->getQuote(); 
echo Mage::helper('core')->currency($cart->getGrandTotal(),true,false); 

为了获得出厂量

$shippingMethod = $cart->getShippingAddress(); 

echo Mage::helper('core')->currency($shippingMethod['shipping_amount'],true,false); 

来源http://www.magentocommerce.com/boards/viewthread/278544/

+0

这不包括税在我的情况?尽管这是一个自定义模块,但会覆盖运输 – surfer190

0

我做了这个粗略的解决方案,这很丑陋,但它的工作,如果有任何建议分钟imize这然后请与建议:)。

<?php $fragt = Mage::getSingleton('checkout/session')->getQuote()->getShippingAddress()->getShippingAmount(); 
            if (($fragt >= 0) && ($fragt <= 60)) 
            echo $this->__('Fragt: 75 DKK '); 
            else 
            if (($fragt >= 75) && ($fragt <= 78)) 
            echo $this->__('Fragt: 95 DKK '); 
            else 
            if (($fragt >= 79) && ($fragt <= 99)) 
            echo $this->__('Fragt: 100 DKK '); 
            else 
            if (($fragt >= 100) && ($fragt <= 110)) 
            echo $this->__('Fragt: 120 DKK '); 
            else 
            if (($fragt >= 120) && ($fragt <= 151)) 
            echo $this->__('Fragt: 150 DKK '); 
            else 
            if (($fragt >= 200) && ($fragt <= 301)) 
            echo $this->__('Fragt: 300 DKK '); 
            ?> 
            </span>