从购物车中取出商品后,Magento会重定向到主页

时间:2012-09-14 14:32:53

标签: php magento checkout

问题

我们正在使用Magento ver。 1.7.0.1并且我们遇到一个问题,即用户从购物车中移除商品,购物车将重定向回主页,而不是传统上只返回结帐页面(即使零项目)。

背景

我们将站点设置在登台服务器上的子文件夹中,并且它完好无损。

这两者之间可能会有什么不同?服务器本身非常相似。 Ubuntu 10.04,PHP 5.3+等

我只能想到它可能是一个路径问题(但跟踪它没有运气)

我确实尝试了here作为“quickfix”的建议,但唉,没有运气。

1 个答案:

答案 0 :(得分:0)

我按照以下步骤解决了问题。

导航至"app\code\core\Mage\Checkout\controllers\CartController.php".

找到“deleteAction()”函数,该函数将如下所示。

  

public function deleteAction()       {

    $id = (int) $this->getRequest()->getParam('id');
    if ($id) {
        try {
            $this->_getCart()->removeItem($id)
              ->save();
        } catch (Exception $e) {
            $this->_getSession()->addError($this->__('Cannot remove the item.'));
            Mage::logException($e);
        }
    }
    $this->_redirectReferer(Mage::getUrl('*/*'));
}

您需要将行"$this->_redirectReferer(Mage::getUrl('*/*'));"更改为$this->_redirect('checkout/cart');。所以现在函数将如下所示。

public function deleteAction()
    {
        $id = (int) $this->getRequest()->getParam('id');
        if ($id) {
            try {
                $this->_getCart()->removeItem($id)
                  ->save();
            } catch (Exception $e) {
                $this->_getSession()->addError($this->__('Cannot remove the item.'));
                Mage::logException($e);
            }
        }
        $this->_redirect('checkout/cart');
    }

上述内容并非提供此方法。我刚刚解释了要调试的地方。尝试create a module并覆盖上述功能。这是提供的方式。

有关详细信息,请参阅此link

由于