简体   繁体   中英

Overriding controllers in Prestashop 1.7

Hi I want to override a controller (in /controllers/front/MyAccountController.php) I tried different things :

  • In a custom module : /modules/my_module/override/controllers/front/MyAccountController.php

     class MyAccountController extends MyAccountControllerCore { /** * Assign template vars related to page content * @see FrontController::initContent() */ public function initContent() { exit("test"); }
  • In /override/controllers/front/MyAccountController.php

     // SAME CODE //

I also tried with this code :

    class MyAccountControllerCore extends FrontController
    {


    /**
     * Assign template vars related to page content
     * @see FrontController::initContent()
     */
    public function initContent()
    {
        exit("test");

    }

What is the correct wayto do it, please ?

All this methods should work,

Did you check the option Disable all overrides in Advanced Parameters > Performance

屏幕截图

It should be to No.

You can also delete the file app/cache/prod/class_index.php to force PrestaShop to scan the override folder.

要覆盖 MyAccountController 控制器,您需要扩展 MyAccountControllerCore 类并在 initContent 函数中添加 parent::initContent() 并清除缓存它可能会起作用。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM