マゼンタコアコントローラを拡張する(Checkout/OnepageController)

コアコントローラをオーバーライドする際に問題が発生しています。私は新しい関数を追加したいのですが、コアファイル(code/core/checkout/controllers/onepagecontroller.php)でそれを行うだけです。

私はいくつかのポストをたどってきましたが、うまくいきません。それらの一部は次のとおりです。

(私はリンクを追加できません、申し訳ありません)

私は何が起こっているのかわからない...多分あなたは私を助けることができます;)。

私はmagento 1.5を使っています。私はこの3つのファイルを持っています:


local -> Arias -> CoreExtended -> etc -> config.xml

<?xml version="1.0" encoding="UTF-8"?>

    
        
            0.1.0
        
    

    
        
            
                
                    
                        Arias_CoreExtended_Checkout
                    
                
            
        
    


app -> etc -> modules -> Arias_CoreExtended.xml

<?xml version="1.0"?>

    
        
            true
            local
        
    


local -> Arias -> CoreExtended -> controllers -> Checkout -> OnepageController.php

<?php

require_once 'Mage/Checkout/controllers/OnepageController.php';

class Arias_CoreExtended_Checkout_OnepageController extends Mage_Checkout_OnepageController
{
    public function collectAction()
    {
        echo 'WTF?';
    }

    public function indexAction()
    {
        echo "This controller has been overridden.";
    }
}

あなたの時間のために事前に感謝します。

3

3 答え

I would first mirror the same directory structure of the controller you are overwriting, so in this case change: local/Arias/CoreExtended/controllers/Checkout/OnepageController.php to local/Arias/CoreExtended/controllers/OnepageController.php

あなたの名前空間/モジュール名を小文字にして、一般的にコントローラを上書きするので _Checkout を削除する必要があります。 。正しいコードは次のようになります。

Arias_CoreExtended

私はこの正確なセットアップを使って、Onepageコントローラを上書きしました!

1
追加された

私はあなたのnamespace/modulenameのようにlower caseを以下のようにしようとします:

Arias_CoreExtended_Checkout

0
追加された
それは動作しません。私は何かを試すことができる何か?助けてくれてありがとう。
追加された 著者 saturno,

あなたのアプローチはほとんど正しい@satumoです。変更する必要があるのはこの行だけです

Arias_CoreExtended

ですからあなたの完全な設定は次のようになります:

<?xml version="1.0" encoding="UTF-8"?>

    
        
            0.1.0
        
      

    
        
            
                
                    
                        Arias_CoreExtended
                    
                
            
        
    

0
追加された