PrestaShop Hook创建
查看全部词条命名空间:Main
我也不知道怎么翻译hook这个词,姑且称之为挂载点,一个用来挂载module的钩子。
这篇文章是翻译PrestaShop论坛里sperio用户的一篇帖子。
- 找到你的Prestashop数据库的hook表,一般前缀是ps_的话,那这个表就是ps_hook。
- 在hook表最后添加一条记录,当然ID要比当前最大值大,默认加1好了,钩子名称随便你命名。比如我命名为"cat"。
- 找到你想添加这个挂钩的页面,比如footer.php。
- 添加 ‘HOOK_CAT’ => Module::hookExec(‘cat’)到页面代码里。
$smarty->assign(array(
'HOOK_RIGHT_COLUMN' => Module::hookExec('rightColumn'),
'HOOK_FOOTER' => Module::hookExec('footer'),
'content_only' => intval(Tools::getValue('content_only'))));
$smarty->display(_PS_THEME_DIR_.'footer.tpl');
- 这是添加后的代码。
$smarty->assign(array(
'HOOK_RIGHT_COLUMN' => Module::hookExec('rightColumn'),
'HOOK_FOOTER' => Module::hookExec('footer'),
'HOOK_CAT' => Module::hookExec('cat'),
'content_only' => intval(Tools::getValue('content_only'))));
$smarty->display(_PS_THEME_DIR_.'footer.tpl');
- 在footer.tpl任意你想插入挂钩的位置添加{$HOOK_CAT}。
注意事项: 一定要在php页面的smarty模板变量数组里给挂钩赋值,这样才能在tpl文件里使用。