1. 创建激活模块文件:
Www_All.xml
<?xml version="1.0"?>
<config>
<modules>
<Www_Shopping>
<active>true</active>
<codePool>local</codePool>
</Www_Shopping>
</modules>
</config>
2.创建配置文件
config.xml
<?xml version="1.0"?>
<config>
<modules>
<Www_Shopping>
<version>0.1.0</version>
</Www_Shopping>
</modules>
<global>
<rewrite>
<shopping_cart> <!-- 这可以是一个唯一的 ID -->
<from><![CDATA[#^/checkout/cart/#]]></from> <!-- 你想被重写的URL-->
<to>/shopping/cart</to> <!-- 重写后的URL -->
</shopping_cart>
</rewrite>
</global>
<frontend>
<routers>
<shopping>
<use>standard</use>
<args>
<module>Www_Shopping</module>
<frontName>shopping</frontName>
</args>
</shopping>
</routers>
</frontend>
</config>
3.创建控制器文件,并覆盖
CartController.php
<?php
require_once(Mage::getModuleDir('controllers','Mage_Checkout').DS.'CartController.php');
class Www_Shopping_CartController extends Mage_Checkout_CartController
{
public function indexAction()
{
Mage::log('override',null,'mage.log');
echo 'hello';
parent::indexAction();
}
}
1
2
3
1、 controller的重写是基于URL的,而不是 class 路径
2、 你需要去 require 被你继承的类