vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   RESOLVED: Calling a Variable from Plugin in VB4 (https://vborg.vbsupport.ru/showthread.php?t=230360)

vaskies 12-17-2009 02:11 AM

RESOLVED: Calling a Variable from Plugin in VB4
 
I'm trying to call a variable from a plugin in a stock template. Is it necessary I render the variable in its own custom template first, then call it inside the stock template using {vb:raw $mytemplate}? I thought this seemed superfluous and wanted to be sure as I just finished reading over https://vborg.vbsupport.ru/showthread.php?t=228078 .

Lynne 12-17-2009 02:37 AM

You may call a varialbe in a stock template, however you much register it for use in that template first. If it's a stock template, then you may have to preregister it if you aren't going to use a template_hook or a variable array that is already registered.

vaskies 12-17-2009 03:53 AM

I pre-register the variables I'm using in the stock template inside the plugin itself, correct? For instance, I have an array named $array that I'm trying to use in the FORUMHOME template.

In the plugin:
PHP Code:

$var1 "variable one";
$var2 "variable two";
$array = array($var1$var2);
vB_Template::preRegister('FORUMHOME'$array); 

In FORUMHOME template:
PHP Code:

{vb:raw array.var1

Nothing outputs, though.

Lynne 12-17-2009 04:10 AM

I am pretty sure that $array is a reserved word and you may not use it as a variable name.

And then I think you want to do something more along this line:
PHP Code:

$yourarray = array('var1' => $var1'var2' => $var2); 

Then you may use {vb:raw var1} and {vb:raw var2} in the template.

consolegaming 12-17-2009 05:34 AM

And the plugin needs to be assigned to the parse_templates hook I believe or at least the global hook wouldn't work for me.

vaskies 12-17-2009 05:52 AM

Quote:

Originally Posted by Lynne (Post 1932054)
I am pretty sure that $array is a reserved word and you may not use it as a variable name.

And then I think you want to do something more along this line:
PHP Code:

$yourarray = array('var1' => $var1'var2' => $var2); 

Then you may use {vb:raw var1} and {vb:raw var2} in the template.

Ah, thank you. I was unaware keys were necessary. I'm new to PHP and never have had the occasion to use a key value pair. Good to know! Also, $array works as a variable. Bad practice though. ;)

Quote:

Originally Posted by consolegaming (Post 1932074)
And the plugin needs to be assigned to the parse_templates hook I believe or at least the global hook wouldn't work for me.

Hm. I'm using the forumhome_start hook which is working fine for me. I'll keep that in mind though if/when I make a plugin that needs to be used on more than one template. Thanks :)

consolegaming 12-17-2009 02:20 PM

Actually you may be fine with just registering variables but I do know that when I was trying to register a custom template it wouldn't work with the global hook and I read someone's post (I think it was Lynne's) suggesting to someone else to use the parse_templates.

As long as it works for you it doesn't make a difference lol.

EDIT: BTW can someone move my thread from the design froum to this one. Realized after I posted it that it should have been here.

Lynne 12-17-2009 04:01 PM

Quote:

Originally Posted by consolegaming (Post 1932262)
EDIT: BTW can someone move my thread from the design froum to this one. Realized after I posted it that it should have been here.

Hit the Report this Post button and ask to have it moved to the xxx forum.


All times are GMT. The time now is 07:08 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.01112 seconds
  • Memory Usage 1,735KB
  • 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
  • (4)bbcode_php_printable
  • (3)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (8)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