我想在商店中为安装我的模块的所有页面添加一个Javascript函数。
我在hooks上阅读,似乎没有单一的“显示”钩子,我可以依赖于为商店中的每一个页面调用 - 不同的页面有不同的钩子。例如。我需要在“主页和常规网站页面”中使用displayHeader
挂钩,但这不适用于产品页面。
有没有办法用一个钩子来做,而不是每个特定页面类别的钩子列表?
请注意,我不想为此使用主题,因为我的模块是商店的附加组件,而不是总体设计模板。
修改
我错误地说displayHeader
挂钩对产品页面不起作用。事实上,正如答案所说,那就是我需要使用的那个。
答案 0 :(得分:1)
你仍然可以使用这个电话
模块$this->context->controller->addJS($this->_path.'your.js');
方法中的hookDisplayHeader()
,它将在js文件列表中注册您的js文件,该文件将显示在例如header.tpl
循环$js_files
P.S。
也不要忘记移动与某些东西,如:
public function hookDisplayMobileHeader()
{
return $this->hookHeader();
}
所以模块应该在2个钩子标题和 mobileHeader 中注册,以便在所有设备上显示。