vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   Problem with template rendering (https://vborg.vbsupport.ru/showthread.php?t=242878)

FatalBreeze 05-19-2010 01:24 PM

Problem with template rendering
 
Hello!
I wanted to post some statistics that are already shown in forumhome, in the footer:
so in forum.php (the hool is called: forumhome_complete) i typed this code:
PHP Code:

$templatea vB_Template::create('footer');
 
$templatea->register('numbermembers'$numbermembers);
 
$templatea->register('newuserinfo'$newuserinfo);
 
$templatea->register('totalposts'$totalposts);
 
$templatea->register('totalthreads'$totalthreads);
$templatea->render(); 

and in the footer template, i entered this code:
HTML Code:

  <div style="display: inline;">{vb:rawphrase threads} {vb:raw totalthreads}</div>
  <div style="display: inline;">{vb:rawphrase posts} {vb:raw totalposts}</div>
  <div style="display: inline;">{vb:rawphrase members} {vb:raw numbermembers}</div>
  <div style="display: inline;">{vb:rawphrase welcome_to_our_newest_member_x, {vb:link member, {vb:raw newuserinfo}}, {vb:raw newuserinfo.username}}</div>

but when i refresh the browser i only see the phrases and not the values.
Can someone please explain how to fix this?

Thanks in advance.

Lynne 05-19-2010 01:37 PM

The footer gets rendered when the global.php file gets included at the very, very top of the page. So, if you want to preregister some variables for use in the footer, you need to do so before the footer template is rendered.

FatalBreeze 05-19-2010 02:04 PM

Thanks! but there's a problem:
I typed this in class_bootstrap.php:
PHP Code:

  // get total threads & posts from the forumcache
  
$totalthreads 0;
  
$totalposts 0;
  if (
is_array($vbulletin->forumcache))
  {
   foreach (
$vbulletin->forumcache AS $forum)
   {
    
$totalthreads += $forum['threadcount'];
    
$totalposts += $forum['replycount'];
   }
  }
  
$totalthreads vb_number_format($totalthreads);
  
$totalposts vb_number_format($totalposts);
  
// get total members and newest member from template
  
$numbermembers vb_number_format($vbulletin->userstats['numbermembers']);
  
$newuserinfo = array(
   
'userid'   => $vbulletin->userstats['newuserid'],
   
'username' => $vbulletin->userstats['newusername']
  ); 

and it works! except for totalthreads and totalposts which contains the value 0.
I printed_r $vbulletin->forumcache, but there were no fields replycount and threadcount. How can i fix this?

Lynne 05-19-2010 04:55 PM

Then I would guess you need to get the forumcache from datastore?


All times are GMT. The time now is 05:01 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01087 seconds
  • Memory Usage 1,730KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_html_printable
  • (2)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (4)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete