从主题的.tpl文件中检查已启用的模块?

时间:2012-03-08 10:19:57

标签: prestashop

如何使用“If”运算符检查主题的.tpl文件是否在某个钩子中启用了模块?

2 个答案:

答案 0 :(得分:0)

{if !empty($hook_name)}
 {$hook_name}
{/if}

答案 1 :(得分:0)

我仍然没有找到任何理由进行此检查。但无论如何,有一个解决方案。 通过以下方式将代码包含在模板中:

{if $some_modules_enabled}
...
{/if}

并将以下代码放在控制器中,例如:FrontController.php

$id_hook = Hook::get($name_of_the_hook);
$some_modules_enabled = false;
foreach ( Hook::getModulesFromHook($id_hook) as $row ) {
    if ( Module::isEnabled( $row['name'] ) ) {
        $some_modules_enabled = true;
        break;
    }
}
$this->context->smarty->assign('some_modules_enabled', $some_modules_enabled);