我正在为prestashop 1.7.3开发一个模块,该模块根据购物车的内容处理降价。我使用了两个钩子(1. displayFidelityProgramCartTop 和2。 actionCartSave ),并在hookActionCartSave($params)
方法内执行操作:根据结果,我需要刷新第一个挂钩返回的数据。
我在Hook::exec('displayFidelityProgramCartTop', array())
方法的末尾使用了hookActionCartSave($params)
,但似乎未执行该挂钩。该挂钩在初始化时被正确调用一次。如何管理刷新挂钩返回的数据(=重新执行挂钩以更新模板)?
我的代码:
cart.tpl
..
{hook h='displayFidelityProgramCartTop' mod='programmeproplus'}
..
programmeproplus.php (主模块文件)
public function install(){
..
$this->registerHook('displayFidelityProgramCartTop') &&
$this->registerHook('actionCartSave')
..
}
public function hookActionCartSave() {
// Perform some actions ..
Hook::exec('displayFidelityProgramCartTop', array());
}
public function hookDisplayFidelityProgramCartTop(){
// Perform some actions ..
return "<p>List of promotions : ".$promotions."</p>";
}