I got started on a project to make the What's Going On box available on pages other than the home page. The way I wanted to do it is shown schematically below:
Code:
function whats_going_on($template_name)
{
global $vbulletin, $show, $template_hook, $vbphrase;
.
.
.
$templater = vB_Template::create('whatsgoingon');
.
$preregistered['whatsgoingon'] = $templater->render();
vB_Template::preRegister($template_name, $preregistered);
}
whats_going_on('FORUMDISPLAY');
Well, that didn't work so I ended up doing it like this:
Code:
function whats_going_on()
{
global $vbulletin, $show, $template_hook, $vbphrase;
.
.
.
$templater = vB_Template::create('whatsgoingon');
.
return $templater->render();
}
$preregistered['whatsgoingon'] = whats_going_on();
vB_Template::preRegister('FORUMDISPLAY', $preregistered);
What am I doing wrong that preregistering doesn't work inside a function?