编程语言
首页 > 编程语言> > php – Prestashop:如何覆盖包含其他类的文件中包含的模块类?

php – Prestashop:如何覆盖包含其他类的文件中包含的模块类?

作者:互联网

prestashop覆盖系统通过使用文件命名方案与许多其他系统一样工作.所以基本上,我将在/ classes / classes中创建一个类,并在/ classes中使用相同的类和文件名,只是为了简化.好吧,我必须覆盖它(使用最新的prestashop版本,可以覆盖模块,以前我们不能):

include_once(dirname(__FILE__).'/MailAlert.php');

class MailAlerts extends Module{

[....]

}

我可以用这个覆盖它:

class MailAlertsOverride extends MailAlerts{

[....]

}

好吧,它工作,文件和类得到认可,但我有最初包含的MailAlert类的问题.我不能重新包括它,但如果我不包括它,模块将要求它.

我宁愿不修改父类.有没有办法解决这个问题?

解决方法:

好吧,我错了:上面的代码正常工作:)

对于那些不知道(这是一个相对较新的prestashop功能),你可以覆盖/override/modules/[modulename]/[modulename.php]中的模块

使用特殊类命名,您可以在上面阅读:modulenameOverride extends modulename

标签:prestashop-1-6,php,module,override
来源: https://codeday.me/bug/20190824/1709605.html