如何在PrestaShop 1.7中扩展类和控制器?
我想通过一个模块扩展一些核心类和控制器,但我不知道如何扩展。我可以通过覆盖来实现,但根据开发人员的说法,这不是一个好方法: 不过,遗留体系结构仍然可以被覆盖。但是在 一般来说,我们建议不要覆盖代码最好扩展它。 但我如何扩展它呢?有代码示例吗如何在PrestaShop 1.7中扩展类和控制器?,prestashop,Prestashop,我想通过一个模块扩展一些核心类和控制器,但我不知道如何扩展。我可以通过覆盖来实现,但根据开发人员的说法,这不是一个好方法: 不过,遗留体系结构仍然可以被覆盖。但是在 一般来说,我们建议不要覆盖代码最好扩展它。 但我如何扩展它呢?有代码示例吗 致以最诚挚的问候在prestashop文档中,您可以看到 将您的类放入/modules/my_module/override/classes 或controller/modules/my_module/override/controllers/{front或
致以最诚挚的问候在prestashop文档中,您可以看到 将您的类放入/modules/my_module/override/classes 或controller/modules/my_module/override/controllers/{front或admin} 我在我的模块上使用它 我的模块的一个示例,重写frontcontroller函数:
<?php
class FrontController extends FrontControllerCore
{
protected function smartyOutputContent($content)
{
if (version_compare(_PS_VERSION_, '1.7', '<')) {
//do something
} else {
parent::smartyOutputContent($content);
}
}
}
在prestashop文档中,您可以看到
将您的类放入/modules/my_module/override/classes
或controller/modules/my_module/override/controllers/{front或admin}
我在我的模块上使用它
我的模块的一个示例,重写frontcontroller函数:
<?php
class FrontController extends FrontControllerCore
{
protected function smartyOutputContent($content)
{
if (version_compare(_PS_VERSION_, '1.7', '<')) {
//do something
} else {
parent::smartyOutputContent($content);
}
}
}
我想将模块提交到PrestaShop Marketplace。所以我不允许使用任何覆盖:(这不是旧的覆盖方式吗?/xx/override模块中的所有文件都将安装到override目录,或仅适用于旧文件。如果我需要从symfony结构“覆盖”ps文件,我需要“扩展”但我真的不知道怎么做。我想将模块提交到PrestaShop Marketplace。因此我不允许使用任何覆盖。:(这不是旧的覆盖方式吗?模块/xx/override中的所有文件都将安装到override目录,或者只对旧文件有效。如果我需要“override”一个来自symfony结构的ps文件,我需要“扩展”,但我真的不知道如何扩展。