1 つのモジュールで 2 つのコントローラーを上書きしようとしています。これらは両方とも Checkout コントローラーです。- OnepageController - カートコントローラー
私のカートコントローラーは動作します。しかし、私のワンページコントローラーは上書きしません。2つのファイルを上書きできないのですか?
私のファイル:
WP/Ajaxcart/etc/config.xml
<?xml version="1.0"?>
<config>
<modules>
<WP_Ajaxcart>
<version>0.1.0</version>
</WP_Ajaxcart>
</modules>
<frontend>
<routers>
<checkout>
<use>standard</use>
<args>
<modules>
<WP_Ajaxcart before="Mage_Checkout">WP_Ajaxcart</WP_Ajaxcart>
</modules>
</args>
</checkout>
</routers>
</frontend>
</config>
WP/Ajaxcart/controllers/OnepageController.php
<?php
require_once "Mage/Checkout/controllers/OnepageController.php";
class WP_Ajaxcart_Checkout_OnepageController extends Mage_Checkout_OnepageController
{
public function successAction()
{
$session = $this->getOnepage()->getCheckout();
if (!$session->getLastSuccessQuoteId()) {
$this->_redirect('checkout/cart');
return;
}
$lastQuoteId = $session->getLastQuoteId();
$lastOrderId = $session->getLastOrderId();
$lastRecurringProfiles = $session->getLastRecurringProfileIds();
if (!$lastQuoteId || (!$lastOrderId && empty($lastRecurringProfiles))) {
$this->_redirect('checkout/cart');
return;
}
echo 'Do something else';
//$session->clear();
$this->loadLayout();
$this->_initLayoutMessages('checkout/session');
Mage::dispatchEvent('checkout_onepage_controller_success_action', array('order_ids' => array($lastOrderId)));
$this->renderLayout();
}
}
WP/Ajaxcart/controllers/CartController.php
<?php
require_once "Mage/Checkout/controllers/CartController.php";
class WP_Ajaxcart_Checkout_CartController extends Mage_Checkout_CartController
{
public function addAction()
{
echo 'test';
}
}
OnepageController.php を上書きしないのはなぜでしょうか。
ありがとうございました。
レックス