我想在vbulletin内的另一页上使用{vb:raw human_verify}吗?
当我在另一个模板中使用此变量时,它不起作用.
它在某些模板(注册,搜索,..)上可以完美运行,但在其他模板上则无法运行.
我试图添加新的插件使vars global:
vB_Template::preRegister('activity_home',array('includedphp ' => $includedphp));
但是,这仅适用于新的(自定义)vbulletin vb:raw变量.
如何克服呢?
提前致谢
解决方法:
我假设您使用的是vb4,并且您的变量是在includedphp中设置的.
然后,您需要更改:
activity_home
使用您需要在其中使用变量的模板名称(如果要在多个模板中添加变量,请多次进行更改).因此,基本上:使用“ FORUMHOME”将其放入论坛首页,或使用“ header”将其放入论坛标题…
This link可能会有所帮助(请参阅“保存到数组中并预先注册以在现有/库存模板中使用”一节).
希望能有所帮助.
编辑:
$templater = vB_Template::create('mytemplate'); // Define a template
$templater->register('my_var', $my_var); // define some variables
$templater->register('my_array', $my_array);
$templatevalues['my_insertvar'] = $templater->render(); // Save the template into a variable, "note that the data needs to be saved into an array a simple variable will throw an error"
vB_Template::preRegister('FORUMHOME', $templatevalues); // "insert" your variable into the FORUMHOME template
然后,您可以在该行的FORUMHOME模板中添加新模板:
{vb:raw my_insertvar}