0

目前我们正在开发 Magento 1.5,我们希望将其升级到最新的 Magento 版本。多次尝试导致“添加到购物车”问题。选择产品并尝试将其添加到购物车时会出现此问题。单击添加到购物车会将您重定向到购物车页面,上面写着:“Kan dit artikel niet toevoegen aan de winkelwagen”,这意味着您不能将此文章添加到购物车。

如何重现它?1)我在不同的服务器/域上安装了与当前实时版本相同的 Magento 版本(1.5.0.1)。2)删除数据库,用live版本的db替换。3) 更改 config_core_data 中的 web/unsecure/base_url 和安全基本 url 4) 测试将产品添加到购物车(此处仍然有效)。5) 将版本更新到最新的 Magento 版本。这是通过 magento connect 和/或 SSH 完成的。在收到这里的建议后,我还在我的文件上安装了 magento 1.8 版本。6)更新后出现上述添加到购物车问题。我没有看到 chrome/firefox 的控制台和 Magento 中出现任何错误。

实施 cookie 生命周期和 noconflict-code 没有任何效果。我还尝试在第 1 步安装不同的版本。你能帮帮我吗?

更新:将 1.5 升级到 1.6 后添加到购物车仍然有效,但在将 1.6 升级到 1.7 后不起作用

经过一些调试,我发现错误是由 app/code/core/Mage/Checkout/Model/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;
}

有谁知道我该如何解决这个问题?

4

3 回答 3

0

您应该执行以下操作。我的帮手。

  1. 清除缓存
  2. 重新索引所有内容
  3. 添加 cookie 生命周期
  4. 设置 Cookie - 仅使用 HTTP 为否
  5. 检查所有文件夹权限是否相同

如果所有这些都无助于考虑调试 AddToCart 控制器。

希望至少有一点帮助。

于 2013-11-14T13:56:22.360 回答
0

表单密钥对于在 magento 中将产品添加到购物车至关重要。在模板的 catalog/product/view.phtml 中的 form 标记之后添加此代码:

<?php echo $this->getBlockHtml('formkey') ?>
于 2013-12-06T10:38:11.537 回答
0

有一个名为:Amasty_Xcoupon 的扩展程序,将其关闭以使其正常工作。在 XML 文件中打开它,而不是在后端

于 2013-11-22T21:58:38.990 回答