The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
vB4 Template Conditionals List
I put this together because it seems lots of people are having problems with the new syntax for conditionals. First off remember you can not use {vb:raw var} in template conditionals. Show only members: Code:
<vb:if condition="$show['member']">Show this to members only</vb:if> Show only guest: Code:
<vb:if condition="$show['guest']">Show this to guest only</vb:if> Show specific user groups : Code:
<vb:if condition="is_member_of($bbuserinfo, 1,2,3)">Show this to user group 1, 2, and 3</vb:if> Show one member: Code:
<vb:if condition="$bbuserinfo['userid'] == 318713">Show this only to the member with the user id of 318713</vb:if> Show every one but one member: Code:
<vb:if condition="$bbuserinfo['userid'] != 318713">Show this to every one but the member with the user id of 318713</vb:if> Show only moderators of any forum: Code:
<vb:if condition="can_moderate()">Show this to all moderators</vb:if> Code:
<vb:if condition="can_moderate($forum['x])">Show this if moderator is moderator of the forum with the id of x</vb:if> Show Moderator of current forum: Code:
<vb:if condition="can_moderate($forum['forumid'])">Show this to the moderator of the current forum</vb:if> Show in one forum: Remember to change x Code:
<vb:if condition="$forum[forumid] == x">Show this if forum id is x</vb:if> Show is every forum but one: Remember to change x Code:
<vb:if condition="$forum[forumid] != x">Show this if forum id is not x</vb:if> Show in several forums: Code:
<vb:if condition="in_array($forum['forumid'], array(1,2,3))">Show this to forum 1, 2 and 3</vb:if> Show in only one file: Look for define('THIS_SCRIPT', 'calendar'); in the top of the php file you want it to show in. Code:
<vb:if condition="THIS_SCRIPT == 'calendar'">Show this only on calendar.php</vb:if> Show in every file but one: Look for define('THIS_SCRIPT', 'calendar'); in the top of the php file you do not want it to show in. Code:
<vb:if condition="THIS_SCRIPT != 'calendar'">Show this only on calendar.php</vb:if> If $customvar is set: Code:
<vb:if condition="$customvar">Show this if $customvar is set</vb:if> If $customvar equals: Code:
<vb:if condition="$customvar == blah">Show this if $customvar equals blah</vb:if> If $customvar does not equal: Code:
<vb:if condition="$customvar != blah">Show this if $customvar does not equal blah</vb:if> vBulletin else statement: Code:
<vb:if condition="$show['guest']"> Show this to only guest. <vb:else /> Show this to all registered users </vb:if> vBulletin else if statement: Code:
<vb:if condition="$show['guest']"> Show this to only guest. <vb:elseif condition="is_member_of($bbuserinfo, 5,6)" /> Show this to user group 5 and 6 which is mods and admins <vb:else /> Show this to all registered users </vb:if> This is all that I can think of right now off the top of my head. Please feel free to add any I forgot and I will add them to this list and give you credit. |
#182
|
||||
|
||||
Thank you both
The second is ok in my case! The number of post is under 1000 so is ok also on vb4! |
#183
|
||||
|
||||
After double checking I see indeed $post[posts] is formatted with commas. I was using $bbuserinfo[posts] which isn't. (but of course contains different data.)
|
#184
|
||||
|
||||
I am trying to find the new conditions for VB4.
Old condistion: Code:
<if condition="$today_is_wednesday">Test</if> Code:
<vb:if condition="$today_is_wednesday">Test</vb:if>
|
#185
|
||||
|
||||
Try:
Code:
<vb:if condition="gmdate('D') == 'Wed' ">
Test
</vb:if>
|
#186
|
||||
|
||||
Quote:
I tried putting the following conditions that you recommended in this code for a widget and even when it is not Wednesday it still displays. Any ideas or help would be appreciated. Code:
<vb:if condition="gmdate('D') == 'Wed' ">
<b>Tonight is a chat night, Scheduled time is 8 pm.</b><br>
</vb:if>
|
#187
|
||||
|
||||
This is the exact code I have working right now on my test forum:
Code:
<vb:if condition="gmdate('D') == 'Sat' ">
TESTING!!!!
</vb:if>
I have this working in my Navbar template. I've never used widgets, do template conditionals work in them at all? I did notice a limitation, gmdate returns Greenwich Mean Time, so it works when it's Wednesday in Greenwich, England. http://us.php.net/manual/en/function.gmdate.php Unfortunately vBulletin doesn't seem to allow the regular date() function which returns the local date, so this may not work well for you anyway. FYI- Your code pasted into my navbar works fine. |
#188
|
||||
|
||||
is it possible to use a conditional to check whether you're viewing ONLY the very front page (CMS)?
e.g. I'd like to add a link in the footer of just the CMS's front page - but not on any other pages, not show if they're reading an article, not show if they're using forum or blogs, etc. etc. - just the front page and only the front page. |
#189
|
||||
|
||||
Quote:
HTML Code:
<vb:if condition="THIS_SCRIPT == 'vbcms'">Show this</vb:if> |
#190
|
||||
|
||||
Thanks HM, but that shows when reading articles too... I need the code to only show on the front page alone - not articles/comments... If you have any ideas on narrowing it down, that would be most appreciated
|
#191
|
||||
|
||||
I'm not sure that's possible since the articles/comments run off of that same script....
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|