Zastępowanie kontrolera Magento w rozszerzeniu społeczności
Mam rozszerzenie CreativeStyle CheckoutByAmazon zainstalowane w moim sklepie magento 1.7 i próbuję zastąpić klasę CheckoutController, ale wydaje się, że magento ignoruje moje nadpisanie. Wszelkie sugestie będą bardzo mile widziane. Również wyczyszczona pamięć podręczna, ale nadal nie działa
(W aplikacji / kodzie / lokalnym folderze)
MyModule CheckByAmazon kontrolery CheckController.php etc config.xml
(app / etc / config.xml)
<?xml version="1.0" encoding="UTF-8"?>
<config>
<modules>
<MyModule_CheckoutByAmazon>
<version>0.1.0</version>
</MyModule_CheckoutByAmazon>
</modules>
<frontend>
<routers>
<checkoutbyamazon>
<args>
<modules>
<MyModule_CheckoutByAmazon before="Creativestyle_CheckoutByAmazon">MyModule_CheckoutByAmazon</MyModule_CheckoutByAmazon>
</modules>
</args>
</checkoutbyamazon>
</routers>
</frontend>
</config>
(W app / code / local / MyModule / CheckoutByAmazon / controllers / CheckoutController)
<?php
//Controllers are not autoloaded so we will have to do it manually:
require_once 'Creativestyle/CheckoutByAmazon/controllers/CheckoutController.php';
class MyModule_CheckoutByAmazon_CheckoutController extends Creativestyle_CheckoutByAmazon_CheckoutController {
public function indexAction() {
exit('I am here');
parent::indexAction();
}
//i want to override this function
public function saveShippingAction() {
//insert my overriding code
exit('saveShipping');
}
}
?>
(W etc / modules / MyModule_CheckoutByAmazon.xml)
<?xml version="1.0"?>
<config>
<modules>
<MyModule_CheckoutByAmazon>
<active>true</active>
<codePool>local</codePool>
</MyModule_CheckoutByAmazon>
</modules>
</config>
Gdzie się mylę?