Go Back   vb.org Archive > vBulletin 4 Discussion > vB4 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 05-18-2011, 09:53 PM
mts7 mts7 is offline
 
Join Date: Jan 2011
Posts: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Variables disappear in template

I have a custom template that worked with vB 3, but now with vB 4, the variables are not being displayed. I noticed that they were still in the old syntax ($variable), so I put them into the new syntax ({vb:var variable}). With the old syntax, I saw the text of the variable name, but not the contents. With the new syntax, I see nothing.

I didn't write this template, but I am now the one to maintain it. What needs to happen between assigning the variable in profile.php and $templater->register('HTML', $page_templater->render());?

PHP Code:
if ($_REQUEST['do'] == 'mycustomaction')
{
    
$custom_variable '<p>This is my custom variable.</p>';
    
construct_usercp_nav('custom');
    
$navbits['']  = "My Custom Page";
    
$page_templater vB_Template::create('customaction');
}

if (!empty(
$page_templater))
{
    
// make navbar
    
$navbits construct_navbits($navbits);
    
$navbar render_navbar_template($navbits);

    (
$hook vBulletinHook::fetch_hook('profile_complete')) ? eval($hook) : false;

    
// add any extra clientscripts
    
$clientscripts = (isset($clientscripts_template) ? $clientscripts_template->render() : '');

    if (!
$vbulletin->options['storecssasfile'])
    {
        
$includecss implode(','$includecss);
    }

    
// shell template
    
$templater vB_Template::create($shelltemplatename);
    
$templater->register_page_templates();
    
$templater->register('includecss'$includecss);
    
$templater->register('cpnav'$cpnav);
    
$templater->register('HTML'$page_templater->render());
    
$templater->register('navbar'$navbar);
    
$templater->register('navclass'$navclass);
    
$templater->register('onload'$onload);
    
$templater->register('pagetitle'$pagetitle);
    
$templater->register('template_hook'$template_hook);
    
$templater->register('clientscripts'$clientscripts);
    
print_output($templater->render());

Any help and insight is greatly appreciated. :-D

--------------- Added [DATE]1305760928[/DATE] at [TIME]1305760928[/TIME] ---------------

It took me a bit of time, but the solution was to make the first part like this.

PHP Code:
if ($_REQUEST['do'] == 'mycustomaction'

    
$custom_variable '<p>This is my custom variable.</p>'
    
construct_usercp_nav('custom'); 
    
$navbits['']  = "My Custom Page"
    
$page_templater vB_Template::create('customaction'); 
    
$page_templater->register('custom_variable'$custom_variable);

I tried the register in the lower part, before the render, then realized that $page_templater is what needed the variable registration. I hope this helps someone.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 01:47 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.07952 seconds
  • Memory Usage 2,175KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)ad_showthread_firstpost
  • (1)ad_showthread_firstpost_sig
  • (1)ad_showthread_firstpost_start
  • (2)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete