在Prestashop 1.5中,我想将现有的prestashop模块挂钩到默认的移动模板。 可以使用管理平台完成,还是必须修改classes / controllers / FrontController.php文件?
干杯
答案 0 :(得分:2)
对我来说,我通过覆盖FrontController类并在smarty中分配我自己的钩子(在示例中为display_left_column钩子)解决了这个问题:
<?php
class FrontController extends FrontControllerCore {
public function initContent() {
parent::initContent();
if ($this->context->getMobileDevice() != false) {
$this->context->smarty->assign(array(
'HOOK_LEFT_COLUMN' => ($this->display_column_left ? Hook::exec('displayLeftColumn') : ''),
));
}
}
然后我在移动index.tpl中回应了这个钩子的内容:
<div data-role="content" id="content">
{$HOOK_LEFT_COLUMN}
{hook h="DisplayMobileIndex"}
{include file='./sitemap.tpl'}
</div><!-- /content -->
答案 1 :(得分:0)
我最终编辑了站点地图和标题模板,以直接包含所需模块。它可以工作,虽然它不是真的“漂亮”,可以这么说。