在我的模块配置页面(后台)中,我想打开 Smarty 模板文件,但它应该只加载 tpl 内容(没有 Prestashop 标题、菜单等)。
class MyModule extends Module
{
public function getContent()
{
if (Tools::getValue('customAction') === 'displayMyPage')
{
return $this->displayMyPage();
}
$url = $this->context->link->getAdminLink('AdminModules', true,
array('configure' => $this->name, 'customAction' => 'displayMyPage'));
return '<a href="'.$url.'" class="btn btn-danger">Open MyPage</a>';
}
public function displayMyPage()
{
$templateURI = __DIR__.'/views/templates/admin/myPage.tpl';
$output = $this->context->smarty->fetch($templateURI);
}
}
我尝试过
$this->content_only = true
但没有运气。
有点中世纪的解决方案,但有效:
class MyModule extends Module
{
/***
***/
public function displayMyPage()
{
$templateURI = __DIR__.'/views/templates/admin/myPage.tpl';
$output = $this->context->smarty->fetch($templateURI);
// solution: echo and exit
echo $output;
exit;
}
}