Измените цену всего продукта с помощью наблюдателя событий
Я создал модуль для добавления 100 USD
ко всем ценам на товары с помощью модуля, но он работает не так, как ожидалось. Нужна помощь, чтобы это исправить.
Ниже приведен мой XML-код наблюдателя событий:
<catalog_product_collection_load_after>
<observers>
<setname>
<type>model</type>
<class>Mdoule_Customgroup_Model_Observer</class>
<method>modifyall</method>
</setname>
</observers>
</catalog_product_collection_load_after>
И модифицируют все функции , как показано ниже:
public function modifyall(Varien_Event_Observer $observer) {
$products = $observer->getCollection();
foreach( $products as $product )
{
$originalprice = $product->getPrice();
$customprice = $originalprice+ 100;
$product->setPrice($customprice);
$product->setCustomPrice($customprice);
$product->setOriginalCustomPrice($customprice);
}
}
Это работает нормально, но я получаю цену, как показано ниже:
$1,450 $1,550
3
Author: Siarhey Uchukhlebau, 2016-03-12
1 answers
Я протестировал ваш код и изменил его, используя ниже:
public function modifyall(Varien_Event_Observer $observer) {
$products = $observer->getCollection();
foreach( $products as $product )
{
$originalprice = $product->getPrice();
$customprice = $originalprice+ 100;
$product->setPrice($customprice);
$product->setCustomPrice($customprice);
$product->setOriginalCustomPrice($customprice);
$product->setFinalPrice($customprice);
}
}
5
Author: Arunendra, 2016-03-14 07:33:35