The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
#1
|
|||
|
|||
How to get Php code that worked in VB3 to work in Vb4?
Hello all,
As we all know the changes from VB3-4 were major, and one such change is how PHP code and variables worked. I have an issue however that despite the articles read here and vbteam, I still can not get it to function as needed. A little background, this site in question uses the Web Templates mod (a great one!) by Logician. What's going on is in the content/template portion there are three variables $r2d_pageNr $r2d_navBar $r2d_prevNext Then on the bottom of the actual editor for this new Web Template, is the php include section, which has the code that I included below. Now here is the kicker, as it is in this way, it works flawlessly on VB3. But when attempting to set this up for VB4 by registering the variables and such, I still can not get it to work. Any help would be greatly appreciated! PHP Code:
|
#2
|
|||
|
|||
I don't mean to impose, but this one issue is keeping the website from being functional. So any assistance that can be provided would be great! It may just be something simple I'm missing here.
|
#3
|
|||
|
|||
I looked it over and I'm confused. I don't notice anything that's version-specific in the code you posted, and I'm not familiar with that mod. Did you try posting your question in the mod thread?
|
#4
|
|||
|
|||
If you're getting any result at all look at your page source, messed up HTML is easy to pick out there.
When you have a string of HTML it ought to be enclosed in single quotes -- that way all the double quotes around attribute values don't need to be escaped. Why do you have \n at the end of so many strings? Do you want line breaks? I have no idea what those will do. |
#5
|
|||
|
|||
Hey guys,
First just to be clear, I didn't write the code. Not sure why it is how it is And yeah I posted this in the mod's thread but this seems more v3-4 specific, then mod related. Anybody care to school me in how to take a PHP blob of code such as the above, and have it execute off the template? I thought I understood the changes, with having to register the variables and all but that didn't seem to do any good. |
#6
|
|||
|
|||
Well, I'm still not sure. I understand you didn't write the code, but if what you posted were code that rendered a template in vb3, then I could show you how to rewrite it for vb4. But I don't see any template code in what you posted, so it's hard to know what's going on. But I'll take a shot (keep in mind I don't know anything about the mod).
Quote:
OK, if you have a vb3 template that you want to convert to vb4, and it includes only the above three variables, then you should be able to convert it by changing all occurances of those variables to Code:
{vb:raw r2d_pageNr} (or r2d_navBar or r2d_prevNext) also, any <if...></if> needs to change to <vb:if...></vb:if> (and any <else/> needs to be <vb:else/>). There are other changes, but let's hope this gets you most of the way. Here's the vb manual on template syntax, in case that helps: https://www.vbulletin.com/docs/html/...emplates_intro In the php code, in vb3 you'd just need to define the variables (like in the code you posted) then render the template like maybe: Code:
eval('$output = "' . fetch_template('template_name') . '";'); In vb4 you have to register the variables. There are two ways to do that, either before the template is being rendered, or "during", I guess you'd say. I'll guess (since I don't see the template code in what you posted) that you want to do it before. So you'd do something like this: PHP Code:
Of course you'd change template_name to the actual template name you're using. Here's an article on how vb templates work (from the php side), if you haven't seen it already: https://vborg.vbsupport.ru/showthread.php?t=228078 |
#7
|
|||
|
|||
Thanks Kh99, I'll give it a try tomorrow on my day off. I think I may have had the rendering backwards, and wasn't aware the php code would need the IF's changed. Missed that one!
Thanks again, |
#8
|
|||
|
|||
The templates need the <if condition=... tags changed. if's in the php code don't need to change.
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|