4

開発者ドキュメントのどこにも見つかりませんが、管理アドオン モジュールの _output 関数でテンプレート ファイルを呼び出すことができるという事実を示唆しています。

どうすればいいですか?モジュールディレクトリから最終出力用のテンプレートファイルを呼び出して、コンテンツを表示したいと思います。

ちなみにWHMCS v5.1.2。

4

1 に答える 1

5

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は、管理領域ですでに初期化されています。あとは、テンプレートファイルを作成してインクルードするだけです(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>
于 2013-03-05T14:37:16.810 に答える