Автор Тема: Как сделать override контроллера модуля?  (Прочитано 484 раз)

26 Октябрь 2017, 08:16:50
  • Новичок
  • *
  • Сообщений: 28
  • Репутация: +2/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Привет!
Преста 1.6.
Модуль bankwire.
Модифицированный контроллер данного модуля (bankwire/controllers/front/validation.php) нужно прооверрайдить.
1. Кладу его в /override/modules/bankwire/controllers/front/validation.php.
2. Меняю имя класса как
class BankwireValidationModuleFrontControllerOverride extends BankwireValidationModuleFrontController3. Удаляю кеш в виде class_index.php.
Почему-то не работает, отрабатывает модуль из /modules/bankwire.
26 Октябрь 2017, 11:23:02
Ответ #1
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
С модулями переопределение одного контроллера не работает. Проверено на многих проектах. Оптимальный вариант создать новый модифицированный модуль на основе старого.
26 Октябрь 2017, 11:48:04
Ответ #2
  • Пользователь
  • **
  • Сообщений: 96
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля
Я так понимаю, это будет уже совсем другой модуль?
Если придут обновления на оригинальный, они не отобразятся на его модифицированном клоне?
26 Октябрь 2017, 12:28:58
Ответ #3
  • Ветеран
  • *****
  • Сообщений: 16670
  • Репутация: +14630/-5
  • Сообщество PrestaShop
    • Просмотр профиля
Все зависит от того, как вы его сделаете. Можете привязать обновления основного со своим и т.д. Обычно не учитывают обновления стандартного, так как он может быть полностью изменится.
26 Октябрь 2017, 12:30:45
Ответ #4
  • Пользователь
  • **
  • Сообщений: 96
  • Репутация: +0/-0
  • Сообщество PrestaShop
    • Просмотр профиля