0

要約: 1 ページのカート コントローラーをオーバーライドし、フロント エンドで [チェックアウト] をクリックしても、checkout/onepage/ にリダイレクトされなくなりました。

詳細: OnepageController の機能の一部を上書きしようとしています - 基本的には、請求タブから配送タブに移動するようにします。そこで、配送料金の計算に使用される追加の配送関連情報を要求できます。 .

したがって、ここに config.xml ビットがあります。

<frontend>
    <routers>
        <checkout>
            <args>
                <modules>
                    <CodexMedia_SmartSend before="Mage_Checkout">
                    CodexMedia_SmartSend
                    </CodexMedia_SmartSend>
                </modules>
            </args>
        </checkout>
    </routers>
</frontend>

.. Mage_Checkout_OnepageController を拡張する新しい OnepageController インスタンス (CodexMedia/SmartSend/controllers/OnepageController.php にあります) を使用します) このコントローラーには saveBillingAction() のみが改造されており、常に配送タブを押し出し、支払い情報に直接移動しません (Iこれが適切に機能するようになったら、カスタム saveShippingAction ロジックを追加します)。

私の最善の推測は、ある種のルーティングをビンクしたことです

助けてくれてありがとう!

編集:コントローラーをコントローラー/チェックアウトに移動し、クラスを CodexMedia_SmartSend_Checkout_Onepagecontroller に変更し、構成を次のように変更しました。

        <checkout>
            <args>
                <modules>
                    <CodexMedia_SmartSend_Checkout before="Mage_Checkout">CodexMedia_SmartSend_Checkout</CodexMedia_SmartSend_Checkout>
                </modules>
            </args>
        </checkout>

ビンゴ!すべて良い。助けてくれてありがとう!

4

1 に答える 1

2

CodexMedia_SmartSend タグ間の改行を削除する必要があります。設定ファイルは次のようになります。

<frontend>
    <routers>
        <checkout>
            <args>
                <modules>
                    <CodexMedia_SmartSend before="Mage_Checkout">CodexMedia_SmartSend</CodexMedia_SmartSend>
                </modules>
            </args>
        </checkout>
    </routers>
</frontend>
于 2013-06-13T06:27:53.027 に答える