2013-07-24 5 views
0

на странице продукта, цена продукта составляет 50 долларов США, я использую JavaScript, меняю цену до 80 долларов США, но при добавлении в корзину все еще 50 долларов на странице проверки , как дать ему еще 80 долларов на странице проверки?magento Как поменять регистрационную карточку на странице оформления заказа

ответ

0

Для обновления цены продукта в телесериале необходимо использовать событие «sales_quote_add_item» magento. Для этого вам необходимо создать собственный модуль.

Создайте файл в приложение/и т.д./модули/Company_All.xml

<?xml version="1.0"?> <config> <modules> 
    <Company_Product> 
     <codePool>local</codePool> 
     <active>true</active> 
    </Company_Product> </modules> </config> 

Создайте конфигурационный файл для нашего файла модуля в приложение/код/​​местные/компании/продукта/и т.д./config.xml

<?xml version="1.0"?> <config> <global> 
    <models> 
     <product> 
      <class>Company_Product_Model</class> 
     </product> 
    </models> 
    <events> 
     <sales_quote_add_item><!--Event to override price after adding product to cart--> 
     <observers> 
      <company_product_price_observer><!--Any unique identifier name --> 
      <type>singleton</type> 
      <class>Company_Product_Model_Price_Observer</class><!--Our observer class name--> 
      <method>update_book_price</method><!--Method to be called from our observer class--> 
      </company_product_price_observer> 
     </observers> 
     </sales_quote_add_item> 
    </events> </global> </config> 

Создать наш файл наблюдателя в приложение/код/​​местные/О компании/продукта/Модель/Цена/Observer.php

class Company_Product_Model_Price_Observer{ 
    public function update_book_price(Varien_Event_Observer $observer) { 
     $quote_item = $observer->getQuoteItem(); 

     //if(){ //your logic goes here 
      $customprice = 50; 
     //} 
     $quote_item->setOriginalCustomPrice($customprice); 
     $quote_item->save(); 
     return $this; 
    } 

}