сбросить один вариант доставки от Shipping Group в Magento 1.9 - PullRequest
0 голосов
/ 10 сентября 2018

Я хотел бы ограничить способ доставки для определенного продукта в Magento 1.9

Ожидаемый результат Когда товар с идентификатором 886 находится в корзине, удалите один метод доставки из группы доставки, но оставьте все остальные методы доступными:

Из того, что я понимаю, это необходимо сделать, получив код доставки, а затем использовать метод unset

Вот код от моего наблюдателя

$quote = Mage::getSingleton('checkout/session')->getQuote();
$productId = 886;

$_rates = $quote->getShippingAddress()->getShippingRatesCollection();

$shippingRates = array();
foreach ($_rates as $_rate):
            $shippingRates[] =  array($_rate->getCode());

            //if the code premiumrates_DPDAIR exists then remove it
            if (in_array($shippingRates['premiumrate_DPDAIR'])) { 
                unset($_rates[$_rate]);
}
endforeach;

//var_dump($shippingRates);

}

Мой var_dump показывает доступные коды, но мое состояние, похоже, не удаляет основанный на методе метод.

Любая помощь приветствуется

...