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 09-29-2011, 01:54 PM
JamesUK JamesUK is offline
 
Join Date: Jul 2004
Posts: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default getting variables to use in plugin's / external php pages

Hi there,

I have created a plugin to include an external php file. This php file does a lookup for me based on a variable i feed it containgin a search string called '$queryText'. In this instance im trying to collect the 'keywords' meta declaration value and use that to search against our DB for the use of contexual adverts.

I'm having two difficulties in doing this..

Firstly, I believe one issue is that im using the wrong hook.. that when my plugin is called.. the keywords either aren't populated or aren't available.

The second issue is I have no idea on the syntax on how to send this value to the external file?!

heres the plugin so far:


Hook Location: global_bootstrap_init_start
Code:
echo $vbulletin->thread['keywords'];
echo $vbulletin->threadinfo['keywords'];
echo $vbulletin->vboptions['keywords'];

// $queryText = ;


ob_start();
  require_once('contextInclude.php');
  $contextInclude = ob_get_contents();
ob_end_clean();
vB_Template::preRegister('postbit_legacy',array('contextInclude' => $contextInclude));

you can clearly see that I am echo'ing out the three variaus attempts I have had to get the keywords from Vb.. all three return nothing.

I managed to echo out the keywords in the postbit_legacy template using:
{vb:raw thread.keywords}

It is in postbit_legacy that i am trying to 'call' the output of my external file.. but obviously the plugin is executed back at init_start so i cant feed the keywords there.. and even if i could.. i have no idea how to put {vb:raw thread.keywords} into a variable that can be used by the external file..


I hope all that makes sense :erm:

I hope somone out there can tell me either how to make the keywords available globally, or how to access them in the plugin.. or where im going wrong generally!

cheers Guys
Reply With Quote
  #2  
Old 09-29-2011, 03:42 PM
nhawk nhawk is offline
 
Join Date: Jan 2011
Posts: 1,604
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I don't know for sure that it will work, but try putting
Code:
global $vbulletin;
at the top of your code. I think that will get the echos working for you.
Reply With Quote
  #3  
Old 09-29-2011, 04:17 PM
kh99 kh99 is offline
 
Join Date: Aug 2009
Location: Maine
Posts: 13,185
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I don't think you need the global statement at global_bootstrap_init_start, but I think what you want is $vbulletin->options['keywords']; (I don't know why they chose to make it "vboptions" in the templates). If you're including (or requiring) your external file you shouldn't have to do anything special, you could access $vbulletin->options or set another variable (but maybe you know that part already).
Reply With Quote
  #4  
Old 09-30-2011, 07:13 AM
JamesUK JamesUK is offline
 
Join Date: Jul 2004
Posts: 16
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Ah see this is where it gets slightly more in depth and confusing..

I was hoping I could find the standard way of getting the keywords and from there figure out the rest.. but it looks like this isn't going to work. Heres why:

we have vbseo installed.. this in turn re-generates (for want of a better word) the keywords from the vb4 standard ones.. in this instance our 'default keywords' are blank in the options and the keywords are generated using text from the forum threads themselves.. at least this is my understanding.

I put some default keywords back in and see if any of the above solution(s) generated anythign and sure enough they do! Great, thank you.. but it doesnt contain the modified keywords.. so I'll just have to keep hunting and askin on vbseo forums too lol

thanks guys for help so far!

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

AMAZINGLY ... I cant even get the thread ID...


Hook: global_bootstrap_init_start

echo $GLOBALS['threadinfo']['threadid'];
echo $vbulletin->post['threadid'];
echo $vbulletin->threadinfo['threadid'];
echo $vbulletin->thread['threadid'];
echo $vbulletin->options['threadid'];
echo $vbulletin->newpost['threadid'];
echo $threadid;
echo $thread['threadid'];

NONE get results.. I cant fathom why they have made this so complicated..

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

ok ignore the above.. moved the hook location to 'showthread_start' and $threadid worked a treat.

getting close now
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 12: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.04788 seconds
  • Memory Usage 2,192KB
  • Queries Executed 13 (?)
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_code
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (4)post_thanks_box
  • (4)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (4)post_thanks_postbit_info
  • (4)postbit
  • (4)postbit_onlinestatus
  • (4)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_postinfo_query
  • fetch_postinfo
  • 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