Go Back   vb.org Archive > vBulletin Article Depository > Read An Article > vBulletin 4 Articles

Reply
 
Thread Tools
vB4 Template Conditionals List
BBR-APBT's Avatar
BBR-APBT
Join Date: Feb 2009
Posts: 946

 

Maryland
Show Printable Version Email this Page Subscription
BBR-APBT BBR-APBT is offline 12-28-2009, 10:00 PM

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>
Show Moderator of one forum: Remember to change x
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.
Reply With Quote
  #202  
Old 05-26-2011, 03:44 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

In the showthread template there is this code:

Code:
<vb:if condition="$show['closethread']"><span>+</span> {vb:rawphrase reply_to_thread}<vb:else />{vb:rawphrase closed_thread}</vb:if>
So
Code:
<vb:if condition="$show['closethread']">
is the condition but if it's TRUE the thread is OPEN, if it's FALSE the thread is closed... at least that is what it looks like to me.
Reply With Quote
  #203  
Old 05-26-2011, 07:05 PM
TundraSoul TundraSoul is offline
 
Join Date: Mar 2002
Posts: 155
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This conditional is being placed in a forum block, but doesn't work correctly. I only wish to display the code to members who are logged in. Not guests.

Here's what I have:

Code:
<vb:if condition="$show['member']">

sadly, everyone sees this even those who are not logged in.

</vb:if>
What's the correct way of writing this?

Thanks!
Reply With Quote
  #204  
Old 05-26-2011, 07:14 PM
Hasanudin's Avatar
Hasanudin Hasanudin is offline
 
Join Date: Jun 2003
Location: Indonesia
Posts: 41
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

@BirdOPrey5
thx, but its not work to me..
* my code at postbit_legacy


@tundrasoul
may be this..?

Code:
<vb:if condition="$show['guest']">
<vb:else />
Show this to all not guest users

</vb:if>
Reply With Quote
  #205  
Old 05-26-2011, 07:27 PM
TundraSoul TundraSoul is offline
 
Join Date: Mar 2002
Posts: 155
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hasanudin View Post

Code:
<vb:if condition="$show['guest']">
<vb:else />
Show this to all not guest users

</vb:if>
No, that didn't work either. The code still display to everyone.
Reply With Quote
  #206  
Old 05-26-2011, 07:36 PM
Hasanudin's Avatar
Hasanudin Hasanudin is offline
 
Join Date: Jun 2003
Location: Indonesia
Posts: 41
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

or this.. ?

Code:
<vb:if condition="!is_member_of($bbuserinfo, 1)">Show this to user group not guest</vb:if>
usergroup 1 = guest
Reply With Quote
  #207  
Old 05-26-2011, 07:47 PM
TundraSoul TundraSoul is offline
 
Join Date: Mar 2002
Posts: 155
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hasanudin View Post
or this.. ?

Code:
<vb:if condition="!is_member_of($bbuserinfo, 1)">Show this to user group not guest</vb:if>
usergroup 1 = guest
It makes no sense, it should be but it doesn't. vB 4.13.

The code still displays to everyone including guests.
Reply With Quote
  #208  
Old 05-26-2011, 09:04 PM
Hasanudin's Avatar
Hasanudin Hasanudin is offline
 
Join Date: Jun 2003
Location: Indonesia
Posts: 41
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

@tundra
this is worked for me :
Code:
<vb:if condition="$bbuserinfo['usergroupid'] == 1">
showing just for guest..
<vb:else />
showing other guest
</vb:if>
Reply With Quote
  #209  
Old 05-26-2011, 09:22 PM
TundraSoul TundraSoul is offline
 
Join Date: Mar 2002
Posts: 155
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hasanudin View Post
@tundra
this is worked for me :
Code:
<vb:if condition="$bbuserinfo['usergroupid'] == 1">
showing just for guest..
<vb:else />
showing other guest
</vb:if>

Did you try it in the forum block code?

It doesn't work there for me, using vB 4.13.
Reply With Quote
  #210  
Old 05-27-2011, 03:40 PM
BirdOPrey5's Avatar
BirdOPrey5 BirdOPrey5 is offline
Senior Member
 
Join Date: Jun 2008
Location: New York
Posts: 10,610
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Hasanudin View Post
@BirdOPrey5
thx, but its not work to me..
* my code at postbit_legacy


@tundrasoul
may be this..?

Code:
<vb:if condition="$show['guest']">
<vb:else />
Show this to all not guest users

</vb:if>
Both you guys are probably having the same issue, the variable isn't used in your template by default so you must register it there. There's another article here on how to register variables for use in templates: https://vborg.vbsupport.ru/showthread.php?t=228078

For example the closedthread check is only done in showthread, not postbit, so you have to pre-register it for postbit.
Reply With Quote
  #211  
Old 06-08-2011, 01:38 PM
baghdad4ever baghdad4ever is offline
 
Join Date: Apr 2007
Location: baghdad
Posts: 443
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

hi

how to display Google ads to the guest and in home page only?
Reply With Quote
Reply

Thread Tools

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 10:55 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.05583 seconds
  • Memory Usage 2,359KB
  • Queries Executed 26 (?)
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
  • (28)bbcode_code
  • (4)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_article
  • (1)navbar
  • (4)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (11)post_thanks_box
  • (40)post_thanks_box_bit
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)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
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete