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 06-21-2010, 10:19 PM
Frank T Frank T is offline
 
Join Date: Jun 2010
Posts: 18
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Would like custom thread content

I have a music database and I'd like to be able to dynamically generate posts from the contents of my database. So far I know that templates are just xhtml snippets and can't call PHP code. I also know that hooks allow me to call php code (which is how I must access my database).

So what's the best way to merge the two? I only want the dynamic content on a single sub-forum -- not on a global basis. It looks to me that hooks are called globally. I don't want that.

I'd like to have the posts auto-generated when a song is submitted. For example, a Title/Subject only:

Song ID-4567

When somebody clicks on the thread entitled "Song ID-4567" then a dynamically generated page will display information about the song (length, recording mode, studio, venue, date, etc.). This needs to be dynamic because some of the information might change -- and that information comes directly from the database.

I'm a newb to vBulletin, but a very seasoned programmer with dozens of languages (including php) under my belt. So just a few pointers in the right direction is probably all I need.

Frank

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

So here's an idea I think should work. I could hook one of the thread or postbit hooks to call my custom PHP code. I could reduce overhead by checking for the forumID and skipping the call to my php code if the forumID doesn't match.

Assuming I'm in the proper forum, I'd parse the message title to get my music database ID. Call my custom PHP page rendering code with the database ID, and place the output into a PHP variable. The PHP variable is referenced in the proper postbit template and displayed on the screen.

I'm pretty sure this approach will work. But which hook do I use? Do I use one of the thread hooks, or post hooks? Which is most appropriate -- and specifically which one? If there's a tutorial, I'll look there...but where't the tutorial or FAQ for all of these hooks?

Frank
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 02:16 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03229 seconds
  • Memory Usage 2,153KB
  • 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
  • (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