Я создаю модуль для настройки моей цены на продукты при добавлении его в корзину, но он не работает. Я использую метод checkout_cart_product_add_after
.Magento - настраиваемый модуль не работает
шаги, которые я последовал:
1) Создание XML (TrediMarketplace_PriceUpdate
) в /app/etc/modules
и это уже появляются в интерфейсе Magento (System > Configuration > Advanced > Advanced
)
2) Создайте config.xml:
<?xml version="1.0"?>
<config>
<modules>
<TrediMarketplace_PriceUpdate>
<version>0.0.1</version>
</TrediMarketplace_PriceUpdate>
</modules>
<global>
<models>
<tredimarketplace_priceupdate>
<class>TrediMarketplace_PriceUpdate_Model</class>
</tredimarketplace_priceupdate>
</models>
<events>
<checkout_cart_product_add_after>
<observers>
<tredimarketplace_priceupdate>
<class>tredimarketplace_priceupdate/observer</class>
<method>priceUpdate</method>
</tredimarketplace_priceupdate>
</observers>
</checkout_cart_product_add_after>
</events>
</global>
</config>
файл размещен на этом пути: /app/code/local/TrediMarketplace/PriceUpdate
3) Создание наблюдателя .php:
<?php
class TrediMarketplace_PriceUpdate_Model_Observer{
public function priceUpdate(Varien_Event_Observer $observer){
// Get the quote item
$item = $observer->getQuoteItem();
// Ensure we have the parent item, if it has one
$item = ($item->getParentItem() ? $item->getParentItem() : $item);
// Load the custom price
$price = "300.00";
// Set the custom price
$item->setCustomPrice($price);
$item->setOriginalCustomPrice($price);
// Enable super mode on the product.
$item->getProduct()->setIsSuperMode(true);
}
}
?>
Файл размещен на этом пути: /app/code/local/TrediMarketplace/PriceUpdate/Model
С этим шаги мои ожидания, что все продукты, добавленные в корзину появляются с $ 300,00 (значение, которое я установил на моем модуле), но это не происходит.
Любое предложение?
Каков полный путь к вашему файлу config.xml? – Prateek
Привет, Prateek. Полный путь к 'config.xml':'/public_html/testes/app/code/local/TrediMarketplace/PriceUpdate/etc/config.xml'. Полный путь 'Observer':'/public_html/testes/app/code/local/TrediMarketplace/PriceUpdate/Model/Observer.php' –
Функция «Добавить в корзину» по умолчанию или вы что-то там что-то изменили? – Prateek