Как изменить цену перед добавлением в корзину в magento с возможностью выбора цены?

php magento

878 просмотра

1 ответ

Я пытался изменить цену с помощью пользовательской опции, но она не работает.

Например, цена моего продукта составляет 100 долларов, а после выбора цена пользовательского опциона составляет 110 долларов, и это хорошо, но я хочу, чтобы, когда я нажимал на кнопку Добавить в корзину, на этот раз я хочу добавить дополнительные 50 долларов в 110 долларов. итак, 160 долларов на странице корзины.

Это мой код наблюдателя для изменения цены. Пожалуйста, направьте меня, что-то не так в коде.

class DRC_PriceChange_Model_Observer  {

    public function change_price(Varient_Event_Observer $observer) 
    {    
        $new_price = 50;
        $event = $observer->getEvent();
        $quote_item = $event->getQuoteItem();
        $item->setCustomPrice($new_price);
        $item->setOriginalCustomPrice($new_price);
        $item->getProduct()->setIsSuperMode(true);      
    }
}
?>
Автор: Dhirendrasinh DRC Источник Размещён: 08.11.2019 11:00

Ответы (1)


0 плюса

Решение

Я нашел решение для этого. Используйте код, указанный ниже:

<?php
class DRC_PriceChange_Model_Observer  {

    public function change_price(Varient_Event_Observer $observer) 
    {   
        $item = $observer->getQuoteItem();
        if ($item->getParentItem()) {$item = $item->getParentItem();}
        $price = $item->getProduct()->getFinalPrice();
        $new_price = 20 + $price;

        $item->setCustomPrice($new_price);
        $item->setOriginalCustomPrice($new_price);
        $item->getProduct()->setIsSuperMode(true);      
    }
}
?>
Автор: Dhirendrasinh DRC Размещён: 20.08.2016 07:30
Вопросы из категории :
32x32