Magento 1.9: Как автоматически добавить товар со скидкой в корзину покупок?
Надеюсь, у вас все хорошо.
Мне нужно некоторое руководство о том, как или если для этого уже существует какой-либо инструмент:
Если определенный товар попадает в корзину покупок, автоматически в корзине появляется еще один конкретный товар, но со скидкой.
Я был бы очень признателен за некоторую помощь.
1
Author: Vivek Kumar, 2018-08-21
1 answers
Объявлять наблюдателей событий в config.xml :
<events>
<checkout_cart_product_add_after>
<observers>
<custommodule>
<class>custommodule/observer</class>
<method>cartProductAddAfter</method>
</custommodule>
</observers>
</checkout_cart_product_add_after>
<checkout_cart_product_update_after>
<observers>
<custommodule>
<class>custommodule/observer</class>
<method>cartProductUpdateAfter</method>
</custommodule>
</observers>
</checkout_cart_product_update_after>
</events>
Затем создайте файл наблюдателя в своем модуле:
class Vendor_Custommodule_Model_Observer
{
/* If you'd like to do the same while updating the shopping cart*/
public function cartProductUpdateAfter($observer)
{
$this->cartProductAddAfter($observer);
}
public function cartProductAddAfter($observer)
{
$product = $observer->getEvent()->getProduct();
$currentItem = $observer->getEvent()->getQuoteItem();
$quote = $currentItem->getQuote();
$quoteItems = $quote->getItems();
/* Detect Product ID and Qty programmatically */
$idToAdd = "ANY PRODUCT ID";
$qty = 1;
$productToAdd = Mage::getModel('catalog/product');
/* @var $productToAdd Mage_Catalog_Model_Product */
$productToAdd->load($idToAdd);
$this->_addProductToCart($productToAdd, $qty);
//put code apply code discount here
}
protected function _addProductToCart($product, $qty)
{
$cart = Mage::getSingleton('checkout/cart');
/* @var $cart Mage_Checkout_Model_Cart */
if ($product->getId()) {
$cart->addProduct($product, $qty);
return true;
}
return false;
}
}
Затем введите свой код для применения скидки после строки
$this->_addProductToCart($productToAdd, $qty);
Надеюсь, это поможет!
0
Author: Magetop E-commerce, 2018-08-22 03:56:03