Php 在哪里可以找到prestashop控制器以及如何扩展它们?

Php 在哪里可以找到prestashop控制器以及如何扩展它们?,php,prestashop,Php,Prestashop,我是新来普雷斯塔肖普的,所以如果我问一个非常简单的问题,请耐心听我说。 我正在创建模块,在我的任务中,我必须扩展javascript中的ajaxcart.add()函数调用的cart控制器。 我想知道,响应此ajax请求的控制器位于何处,以及如何在模块中扩展此控制器。 关于这方面有什么好的文件吗? 谢谢您可以重写defaut CartController.php,在override module文件夹中添加您的类代码(仅修改的方法)。在这种情况下,我假设您要修改ProcessChangeProd

我是新来普雷斯塔肖普的,所以如果我问一个非常简单的问题,请耐心听我说。 我正在创建模块,在我的任务中,我必须扩展javascript中的ajaxcart.add()函数调用的cart控制器。 我想知道,响应此ajax请求的控制器位于何处,以及如何在模块中扩展此控制器。 关于这方面有什么好的文件吗?
谢谢

您可以重写defaut CartController.php,在override module文件夹中添加您的类代码(仅修改的方法)。在这种情况下,我假设您要修改ProcessChangeProductInWater方法,您可以看到

我找到了在模块内扩展prestashop默认控制器的方法。 我查看了
classes/Dispatcher.php
,在dispatch()方法中找到了它

因此,控制器的命名约定是

<modulename><controllername>ModuleFrontController
areacalc模块内mycart控制器的文件路径

class areacalcmycartModuleFrontController extends CartController {
/modules/areacalc/controllers/front/mycart.php
url将是

http://localhost:8080/index.php?fc=module&module=areacalc&controller=mycart

正如A.Visser所建议的,你应该阅读Prestashop文档。有很多关于扩展现有功能的信息。您还可以查看其他模块,它们为现有代码添加了额外的功能。有人能告诉我一种类似的方法来扩展/classes/product.php吗?@nathangiesbrecht
/modules/areacalc/controllers/front/mycart.php
http://localhost:8080/index.php?fc=module&module=areacalc&controller=mycart