View Full Version : BBCode and variables
SOFDrew
09-13-2012, 04:40 PM
I am trying to create BBCode that will look up information from my DB. The forums already pull information that looks like this:
$forumInfo['AffiliateLink']
It is a table variable that is set by forum. Is there any way to use that type of link in BBCode? When I use it now it comes through as you see it above :(
You can't do that just by defining a bbcode, you'd need to write a plugin of some kind.
SOFDrew
09-13-2012, 04:50 PM
A plugin is already written to bring the information INTO the forums. It's just the BBCode that I am trying to get working now.
In the templates I can use that just fine.
--------------- Added 1347558765 at 1347558765 ---------------
I better explain more...
The BBCode is a set of HTML that I am using. I want to use it like this:
Program Name
I have a bunch of HTML that takes the option and parameter and places it into the HTML appropriately. However - I have 1 piece of information it needs to get from the tables.. The AffiliateLink. that information is already defined and used in the templates. I'm just not sure how to get AT IT in the BBCode.
--------------- Added 1347558854 at 1347558854 ---------------
Added:
It would be no different than trying to get at the PostID from within BBCode. How do I address that?
A plugin is already written to bring the information INTO the forums. It's just the BBCode that I am trying to get working now.
In the templates I can use that just fine.
OK, but the problem is that defining a custom bbcode in the bbcode manager only lets you specify html as the replacement. It's not a template so you cannot use variables or template tags (like vb:if, etc).
But there is this mod: https://vborg.vbsupport.ru/showthread.php?t=264896 (which I'm surprised hasn't been more popular). It will let you use php in the bbcode definition, so you should be able to use your variables if they're global. One thing that I'm not sure of though is about caching. The final html code for a post is normally cached to avoid doing work (like the bbcode processing) over and over when it always comes out the same. But if you want to define a bbcode that you would expect to look different sometimes (for different users or something like that), then it might not work as expected. Then you might need to do something like use a str_replace() in a plugin at hook postbit_display_complete to insert your variable.
It would be no different than trying to get at the PostID from within BBCode. How do I address that?
You can't do that either, with a normal custom bbcode, unless of course the postid is included as the parameter (which I think may be how some of the bbcodes work). There is no variable that can be used in the replacement that will give you the current postid (or anything else, except the option and parameter).
Edit: I missed this addition to your post:
I have a bunch of HTML that takes the option and parameter and places it into the HTML appropriately. However - I have 1 piece of information it needs to get from the tables.. The AffiliateLink. that information is already defined and used in the templates. I'm just not sure how to get AT IT in the BBCode.
Then it sounds like the mod I mentioned above might work for you.
SOFDrew
09-14-2012, 12:13 PM
That mod worked! thank you very much :) I had to re-formulate the bbcode a bit (i.e., lose the HTML and put it into a variable), because inserting the php in the middle did nothing :) However, once I figured that out - was easy.
Thanks again.
vBulletin® v3.8.12 by vBS, Copyright ©2000-2025, vBulletin Solutions Inc.