2013-01-09 30 views
3

我无法在开发人员文档中的任何位置找到它,但它确实暗示了一个事实,即在admin插件模块的_output函数中,我可以调用模板文件。WHMCS插件模块管理部分模板

我如何做到这一点?我想从模块目录中调用一个模板文件来最终输出以显示我的内容。

WHMCS v5.1.2顺便说一下。

回答

3

如果我们的插件模块中使用get_defined_constants()我们看到,例如:

[SMARTY_DIR] => /var/www/vhosts/domain.com/httpdocs/whmcs/includes/smarty/ 
[SMARTY_CORE_DIR] => /var/www/vhosts/domain.com/httpdocs/whmcs/includes/smarty/internals/ 
[SMARTY_PHP_PASSTHRU] => 0 
[SMARTY_PHP_QUOTE] => 1 
[SMARTY_PHP_REMOVE] => 2 
[SMARTY_PHP_ALLOW] => 3 

Smarty的含义已经初始化在管理方面。剩下的就是创建我们的模板文件并将它们包含在内(如果您想保持smarty标准,请将其包含在addon文件夹中的templates子目录中)。

修改为您_output功能如下:

$smarty = new Smarty(); 
$smarty->assign('myvar', 'World'); 
$smarty->caching = false; 
$smarty->compile_dir = $GLOBALS['templates_compiledir']; 
$smarty->display(dirname(__FILE__) . '/templates/mytemplate.tpl'); 

所有剩下的就是你的模板文件mytemplate.tpl的内容,但你知道这部分已...

<p>Hello {$myvar}!</p>