Я хочу, чтобы переопределить следующий контроллер, который создает заказы в интерфейсе:Magento - Override контроллер порядка
app/code/core/Mage/Adminhtml/controllers/Sales/Order/CreateController.php
Я скопировал сам файл в:
app/code/community/Pinto/PartnerSystem/Adminhtml/controllers/Sales/Order/CreateController.php
Ради не будучи где и как точно скопировать файл/структуру каталогов, я также скопировал его в:
app/code/community/Pinto/PartnerSystem/controllers/AdminControllers/Sales/Order/CreateController.php
Затем я переименовал класс:
class PartnerSystem_Adminhtml_Sales_Order_CreateController extends Mage_Adminhtml_Sales_Order_CreateController
{
// functions
}
В моей config.xml я добавил следующее:
<admin>
<routers>
<partnersystem>
<use>admin</use>
<args>
<module>Pinto_PartnerSystem_AdminControllers</module>
<frontName>partnersystemadmin</frontName>
</args>
</partnersystem>
<adminhtml>
<args>
<modules>
<partnersystem before="Mage_Adminhtml">PartnerSystem_Adminhtml_Sales_Order_CreateController</partnersystem>
</modules>
</args>
</adminhtml>
</routers>
</admin>
Я не совсем уверен, как к тому, что я должен поставить между сделать он использует мой CreateController.php
вместо базового.
Совершенно новый для Magento так мог использовать некоторую помощь :)
Привет, Мариус, спасибо за быстрый ответ! Кажется, теперь он распознает новый файл контроллера, однако я включил исходный класс перед определением класса, как вы сказали, и я получил следующую ошибку: «Файл контроллера был загружен, но класс не существует». – Daniel
@ DanielPaul. О да ... Я забыл другое. Новое имя класса контроллера должно быть «Pinto_PartnerSystem_Adminhtml_Sales_Order_CreateController». Я добавлю его к ответу – Marius
Ах, забыли пространство имен! Спасибо, что сейчас работает. – Daniel