2016-06-30 111 views
0

我創建的模塊可以在添加到購物車時自定義我的產品價格,但它不起作用。我正在使用checkout_cart_product_add_after方法。Magento - 自定義模塊不能正常工作

的步驟,我跟着:

1)/app/etc/modules創建一個XML(TrediMarketplace_PriceUpdate)和它已經出現在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(價值,我定我的模塊),但這沒有發生。

有什麼建議嗎?

+0

'config.xml'文件的完整路徑是什麼? – Prateek

+0

嗨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' –

+0

「加入購物車」功能是默認的,還是您改變了內容? – Prateek

回答

0

我已經創建了一個壓縮模塊及其功能完整。我用你的代碼片段並組裝成一個模塊。你可能有任何語法問題,但它的工作。請從這裏複製https://github.com/lapitspublic/TrediMarketplace_PriceUpdate.git

+0

嗨拉克斯曼,thx爲您的答案。我從你的GitHub中複製,但它現在仍然在工作= /。 [產品示例](http://tredi.com.br/testes/index.php/protecao-eletrica/placa-de-controle-para-altivar-1100-1100.html)在我的測試網站上。 當產品被添加到購物車時,該值不會變爲「$ 300.00」 –

+0

您可以只是把'die('stop!stop!'在這裏'');'在觀察者的方法開始時,我可以確保指針進入正確的方法。 –

+0

需要任何幫助/疑難解答請ping我在skype –