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. |
#332
|
|||
|
|||
I'm sorry, I thought it was pretty obvious. It's within the forum title link and the conditional I added is the only one in the statement, but here's my whole code for forumhome_forumbit_level2_nopost
PHP Code:
--------------- Added 24 Nov 2012 at 23:09 --------------- The conditional I added was this: PHP Code:
|
#333
|
||||
|
||||
Not that it should make a difference but did you try putting spaces outside the conditional?
Code:
"forumtitle" <vb:if condition="in_array($forum['forumid'], array(22,24))"> target="_blank"</vb:if> >{vb:raw .title}</a></h2> |
#334
|
||||
|
||||
This worked fine for me:
HTML Code:
<h2 class="forumtitle"><a href="{vb:link forum, {vb:raw forum}}" class="forumtitle" <vb:if condition="in_array($forum['forumid'], array('22','24'))"> target="_blank"</vb:if> >{vb:raw forum.title}</a></h2> |
#335
|
|||
|
|||
Thank you both.
I got it to work by posting the same code in forumhome_forumbit_level2_post For some reason I was thinking it was using forumhome_forumbit_level2_nopost Thanks again! |
#336
|
|||
|
|||
How to Usergroups able to view but can not use ?
Code:
<vb:if condition="is_member_of($bbuserinfo, 6,7,9,10,16)"> code here </vb:if> |
#337
|
|||
|
|||
How do I get these two conditional work properly in a single task. I can not make it work.
Can someone help me? PHP Code:
|
#338
|
||||
|
||||
You just use AND to join two conditions that both must be true.
Code:
<vb:if condition="is_member_of($bbuserinfo, 5,6,7,42,43) AND $post['currentactivity']"> {vb:raw post.currentactivity} </vb:if> |
#339
|
|||
|
|||
I tried using this in a CMS widget and it would not work. Any ideas?
|
#340
|
||||
|
||||
Do you mean a widget template? Because template conditionals won't work in widget PHP code.
My guess is regardless, $post is a variable only available inside posts (the postbit template) and would not be available in any CMS template, so it would always return FALSE. |
#341
|
|||
|
|||
Quote:
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|