Как создать новый хук для prestashop 1.3
Шаблоны для prestashop базируются на шаблонизаторе Smarty и все модули используют хуки (hooks) как определение места положения модуля на странице.
По умолчанию в prestashop есть следующие хуки:
Если же нужно создать новый хук для размещения вашего модуля, то вот краткая инструкция как это сделать:
1. Добавить описание хука в базе данные – таблица ps_hook… (ps_ это префикс prestashop в моей базе, у вас может быть иначе)
1 2 |
insert into ps_hook(name,title,description,position) values ('new_hook','New hook for footer page','Added for new module',1) |
2. В обработчике страницы изменить код обработки хуков (например в footer.php)
было
1 2 3 4 |
$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'); |
должно стать:
1 2 3 4 |
$smarty->assign(array( 'HOOK_RIGHT_COLUMN' => Module::hookExec('rightColumn'), 'HOOK_FOOTER' => Module::hookExec('footer'), 'HOOK_NEW' => Module::hookExec('new_hook'), 'content_only' => intval(Tools::getValue('content_only')))); $smarty->display(_PS_THEME_DIR_.'footer.tpl'); |
3. Вставьте
1 |
{$HOOK_NEW} |
В ваш smarty шаблон (в нашем случае footer.tpl)
PS. У вас должно быть что-то что публиковаться в новый хук – это может быть новый или модифицированный существующий модуль.
Коментарии0 новых