如何将我的模块Javascript添加到Prestashop的* all *页面中?
问题描述:
我想为安装我的模块的商店中的所有页面添加一个Javascript函数。如何将我的模块Javascript添加到Prestashop的* all *页面中?
我读到hooks,看起来没有单一的“显示”挂钩,我可以指望在商店中的每一个页面被调用 - 不同的页面有不同的挂钩。例如。我需要将displayHeader
挂钩用于“主页和常规网站页面”,但这不适用于产品页面。
有没有办法做到这一点与单个钩子,而不是每个特定页面类别的钩子列表?
请注意,我不想为此使用主题,因为我的模块旨在作为商店的附加组件,而不是整体设计模板。
编辑:
我是错的说displayHeader
钩不适用于产品网页的工作。事实上,正如答案所说,那是我需要使用的那个。
答
您仍然可以使用此调用 $this->context->controller->addJS($this->_path.'your.js');
模块hookDisplayHeader()
方法,它会将您的js文件注册到js文件列表中,该列表将出现在例如header.tpl
loop by $js_files
P.S.
也不符合somethign像忘记手机:
public function hookDisplayMobileHeader() { return $this->hookHeader(); }
所以模块应在2个钩头和mobileHeader出现在所有设备上进行注册。
是的,它似乎displayHeader(和displayMobileHeader移动)是我最终需要的钩子。我正在纠正我的问题以表明这一点。谢谢! –