в Magento, как я могу указать стоимость доставки на странице продукта для настраиваемого продукта? - PullRequest
2 голосов
/ 02 августа 2011

У меня есть этот код в файле моей продукции view.phtml: я получаю смету доставки и основываю самую низкую стоимость на адресе в Великобритании и отображаю ее на странице товаров Вместо того, чтобы иметь полную оценку доставки на страницах.

<?php
                if($_product->isSaleable())
                {
                $quote = Mage::getModel('sales/quote');
                $quote->getShippingAddress()->setCountryId('GB');
                $quote->addProduct($_product);
                $quote->getShippingAddress()->collectTotals();
                $quote->getShippingAddress()->setCollectShippingRates(true);
                $quote->getShippingAddress()->collectShippingRates();
                $rates = $quote->getShippingAddress()->getShippingRatesCollection();

                $minPrice = PHP_INT_MAX;
                foreach ($rates as $rate) {
                $minPrice = min($minPrice, $rate->getPrice());
                }
                if ($minPrice == 0) {
                    echo ('This item qualifies for FREE shipping');
                }
                elseif ($minPrice < PHP_INT_MAX) {
                    echo ('Shipping to UK from £' . money_format('%i', $rate->getPrice()) . "\n");
                }
                }
                ?>

Что отлично подходит для простых продуктов. однако на конфигурируемых продуктах всегда отображается бесплатная доставка! Как можно обойти это?

1 Ответ

0 голосов
/ 02 августа 2011

Это всего лишь предположение, но настраиваемый продукт - это просто контейнер для организации набора простых продуктов.Когда вы добавляете товар в корзину (по-настоящему), в корзину добавляется простой товар в дополнение к настраиваемому.Я предполагаю, что этот второй продукт предоставляет вес и информацию для доставки и т. Д.

Это подразумевает, что для получения оценки доставки вам потребуется указать один из простых продуктов под настраиваемым (либо напрямую, либо путем передачи некоторых опций и делая вид, что «выбрал» продукт), чтобы увидеть оценки доставки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...