2013-11-14 40 views
0

目前我們正在開發Magento 1.5,我們希望將其升級到最新的Magento版本。多次嘗試導致「加入購物車」問題。當產品被選中並且您嘗試將其添加到購物車時,會出現此問題。點擊添加到購物車會將您重定向到購物車頁面,並顯示:「請注意您的購物車」,這意味着您不能將此物品添加到購物車。Magento購物車:升級時不起作用

如何重現它? 1)我將Magento的相同版本(1.5.0.1)安裝爲不同服務器/域上的當前實時版本。 2)刪除數據庫並將其替換爲實時版本的數據庫。 3)在config_core_data中更改web/unsecure/base_url和安全基礎url 4)測試將產品添加到購物車(在此處仍然有效)。 5)將版本更新到最新的Magento版本。這是通過magento連接和/或通過SSH完成的。我在這裏給出建議後,還在我的文件中安裝了magento 1.8版本。 6)更新後發生上述添加到購物車的問題。我沒有看到任何錯誤出現在Chrome/Firefox和Magento的控制檯中。

實現Cookie生存時間和noconflict代碼沒有任何影響。我也嘗試在第1步安裝不同的版本。你能幫我嗎?

UPDATE:添加到購物車升級1.5到1.6後仍然有效,但在升級1.6至1.7

一些調試,我發現,錯誤被下一個呼叫應用程序/代碼後引起後不起作用/核心/法師/結帳/型號/ cart.php:

$this->getQuote()->getShippingAddress()->setCollectShippingRates(true); 

這是在功能:

public function save() 
    { 
    Mage::dispatchEvent('checkout_cart_save_before', array('cart'=>$this)); 

    $this->getQuote()->getBillingAddress(); 
    $this->getQuote()->getShippingAddress()->setCollectShippingRates(true); 
    $this->getQuote()->collectTotals(); 
    $this->getQuote()->save(); 
    $this->getCheckoutSession()->setQuoteId($this->getQuote()->getId()); 
    /** 
    * Cart save usually called after changes with cart items. 
    */ 
    Mage::dispatchEvent('checkout_cart_save_after', array('cart'=>$this)); 
    return $this; 
} 

任何人都知道我是如何解決這個問題?

+0

嗨,嘗試重新編制所有數據庫的數據。清除magento/var文件夾。 – Martin

回答

0

有一個擴展名爲:Amasty_Xcoupon,關閉此功能以使其正常工作。在XML文件中將其關閉,而不在後端

0

您應該執行以下操作。幫手給我。

  1. 清除緩存
  2. 重新索引一切
  3. 添加cookie生存
  4. 設置cookie - 使用HTTP只有到NO
  5. 檢查所有文件夾的權限是一樣的

如果所有這些不會幫助考慮調試AddToCart控制器。

希望至少有一點幫助。

+0

謝謝你的回覆,我已經嘗試了所有5個步驟,他們沒有工作。我不知道從哪裏開始調試addToCart控制器 – Billy

+0

/app/code/core/Mage/Checkout/controllers/CartController.php:addAction() Ps。嘗試按相反順序執行所有步驟:) – MrNomNom

+0

我更新了主題,該功能對您更有意義嗎? – Billy

0

Form Key在將產品添加到magento中的購物車中至關重要。只需在您的模板的目錄/產品/ view.phtml表單標籤後 添加以下代碼:

<?php echo $this->getBlockHtml('formkey') ?>