Я хочу указать стоимость доставки на странице фактического продукта в Magento, чтобы клиенты могли видеть, сколько им это будет стоить. Я могу добавить оценку доставки со страницы корзины. Но все, что я на самом деле хочу, это строка текста под ценой продукта, в которой говорится, что доставка от XX.XX фунтов стерлингов
Я видел это руководство: http://aneeshsreedharan.wordpress.com/2010/04/28/estimating-shipping-rate-on-product-details-page-in-magento/#comment-10, но это у меня не работает на Magento 1.4.2 - я думаю, что в этом руководстве используется более старая версия.
В настоящее время я использую метод доставки по тарифу, основанному на весе, и только с одним вариантом.
РЕДАКТИРОВАТЬ: В конце концов я решил проблему: довольно смущающе, я не осознавал, что блог удаляет форматирование. Это было изменение ' на '
Теперь я могу подтвердить, что приведенный ниже код отображает доставку:
<?php
if($_product->isSaleable())
{
$quote = Mage::getModel('sales/quote');
$quote->getShippingAddress()->setCountryId('*');
$quote->addProduct($_product);
$quote->getShippingAddress()->collectTotals();
$quote->getShippingAddress()->setCollectShippingRates(true);
$quote->getShippingAddress()->collectShippingRates();
$rates = $quote->getShippingAddress()->getShippingRatesCollection();
foreach ($rates as $rate)
{
echo $rate->getPrice();
}
}
?>