0
我有一个关于模块覆盖的问题。为了学习目的,我创建了自定义付款模块,现在我想将购物车数量更改为总订购数量。但是 $this->module->validateOrder
给出错误的金额。有没有办法来覆盖PaymentModuleCore类的validateOrder函数?Prestashop支付模块覆盖
我有一个关于模块覆盖的问题。为了学习目的,我创建了自定义付款模块,现在我想将购物车数量更改为总订购数量。但是 $this->module->validateOrder
给出错误的金额。有没有办法来覆盖PaymentModuleCore类的validateOrder函数?Prestashop支付模块覆盖
您可以创建自己的类并重写的功能,例如:
class MyPaymentModule extends PaymentModule
{
public function validateOrder($id_cart, $id_order_state, $amount_paid, $payment_method = 'Unknown', $message = null, $extra_vars = array(), $currency_special = null, $dont_touch_amount = false, $secure_key = false, Shop $shop = null)
{
// your code
}
}
而且你的模块扩展MyPaymentModule,不PaymentModule。
谢谢@AlexDeb的回复。据我所知,我应该把这个MyPaymentModule.php文件放在“mymodule/override/classes/MyPaymentModule.php”上吗?如果我错了,请纠正我的错误。 –
不,不要,只需在模块文件夹中创建一个文件夹“classes”,然后在需要时: require_once(_PS_MODULE_DIR_。'yourmodule'。DIRECTORY_SEPARATOR。'classes'。DIRECTORY_SEPARATOR。'MyPaymentModule.php'); – AlexDeb