Nhận giá vận chuyển từ báo giá


7

Tôi đang cố gắng để có được giá vận chuyển từ báo giá trên trang giỏ hàng cho toàn bộ đơn hàng.

Tôi đã thử nhiều thứ, bao gồm:

Mage::getModel("checkout/session")->getQuote()->getShippingMethod()->getPrice();


$rates = Mage::getModel("checkout/session")->getQuote()->getShippingAddress()->getAllShippingRates();
foreach($rates as $rate){
    $rate->getPrice();
}

Tôi có thể làm gì để có được giá vận chuyển trong giỏ hàng Magento?

Câu trả lời:


16

Điều này sẽ làm các mẹo. Từ câu hỏi của bạn, tôi cho rằng khách hàng đã chọn phương thức vận chuyển mong muốn của họ.

<?php

$quote = Mage::getModel("checkout/session")->getQuote();
$amount = $quote->getShippingAddress()->getShippingAmount();

Trong thực tế, có một số phương pháp có sẵn cho bạn. Nhu la:

<?php 

$address = $quote->getShippingAddress();
$address->getBaseShippingAmount();
$address->getBaseShippingDiscountAmount();
$address->getBaseShippingHiddenTaxAmount();
$address->getBaseShippingInclTax();
$address->getBaseShippingTaxAmount();

$address->getShippingAmount();
$address->getShippingDiscountAmount();
$address->getShippingHiddenTaxAmount();
$address->getShippingInclTax();
$address->getShippingTaxAmount();

Nếu bạn chỉ đơn giản muốn nhận tất cả giá vận chuyển có sẵn vào một mảng:

<?php

$address = $quote->getShippingAddress();

$shippingPrices = array();
foreach($address->getAllShippingRates() as $rate){
    $shippingPrices[$rate->getCode()] = $rate->getPrice();
}
var_dump($shippingPrices);

1
Niềm vui và may mắn của tôi cho bạn trong nỗ lực của bạn!
Shawn Abramson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.