Magento--加入购物车 - 网址更改

时间:2013-06-19 15:01:33

标签: php magento magento-1.7

在我的网站中,当我点击addtocart按钮时,它会返回以下网址:

http://mywebsite.com/ajax/index/add/uenc/a...cC5uZXQvYXBwbGlhbmNlcy5odG1s/product/83/isAjax/1

但我需要下面的特定网址:

http://mywebsite.com/checkout/cart/add/uenc/a...cC5uZXQvYXBwbGlhbmNlcy5odG1s/product/83/isAjax/1

我可以知道在哪里编辑吗?

1 个答案:

答案 0 :(得分:2)

当然,您可以在所有主题文件中更改它。

但是,如果您想要在站点范围内更改所有添加到购物车的行为,您可能需要扩展CartController并将添加操作转发到您自己的ajax模块。

一个例子:

应用程序/代码/本地/ MyCompany的/ AJAX /控制器/ CartController.php:

<?php

require_once 'Mage/Checkout/controllers/CartController.php';
class MyCompany_Ajax_CartController extends Mage_Checkout_CartController {

    public function addAction() {
        $this->_forward('add', 'index', 'ajax', $this->getRequest()->getParams());
    }

}

应用程序/代码/本地/ MyCompany的/ AJAX的/ etc / config.xml中:

<?xml version="1.0"?>
<config>

    [...]

     <frontend>
           <routers>
                <checkout>
                    <args>
                        <modules>
                            <mycompany_ajax before="Mage_Checkout">MyCompany_Ajax</mycompany_ajax>
                        </modules>
                    </args>
                </checkout>
            </routers>
        </frontend>
    </config>

另一种方法是添加一个侦听controller_action_predispatch_checkout_cart_add事件并转发到那里的观察者。