Не могу переопределить Checkout Controller в Magento - PullRequest
7 голосов
/ 18 августа 2011

Я пытаюсь внести некоторые изменения в контроллер Checkout в моем магазине Magento, однако, когда я пытаюсь поместить файл контроллера в мой локальный каталог, кажется, что он не соответствует локальному файлу для этого.

Я проверил, что файлы находятся в одном и том же месте в соответствующих пулах кода, и файлы названы одинаково, просто он этого не сделает.

  • / приложение / код / ​​ядро ​​/ Mage / Оформить заказ / контроллеры | CartController.php
  • / приложение / код / ​​местные / Mage / Оформить заказ / контроллеры | CartController.php

Это пути к двум файлам, которые у меня есть.

Есть ли что-то особенное в файлах оформления покупок в Magento, которые препятствуют их переопределению?

Ответы [ 2 ]

15 голосов
/ 19 августа 2011

Кстати, переопределение контроллера не работает, если поместить соответствующий файл в локальную папку с такой же структурой папок. Скорее вам нужно следовать следующему синтаксису для цели:

<config>
    <frontend> [1]
        <routers>
            <checkout> [2]
                <args>
                    <modules>
                        <yourModule before="Mage_Checkout">Namespace_Module_Overwrite_Checkout</yourModule> [3]
                    </modules>
                </args>
            </checkout>
        </routers>
    </frontend>
</config>
[1] Depending on the controllers area ,"frontend" or "admin"
[2] Router node of the module to be overridden (look it up in the config.xml of that module)
[3] The tag  can be anything, it must be unique within the  node.
Your_Module_Overwrite_Checkout (is mapped to directory)
Your/Module/controllers/Overwrite/Checkout/

Hope this helps.
Regards
MagePsycho
1 голос
/ 17 октября 2011

Прочтите Magento Wiki от lichal, чтобы получить рабочее и полное решение: https://wiki.magento.com/display/m1wiki/How+To+Overload+a+Controller

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...