View Single Post
  #20  
Old 08-23-2006, 11:50 AM
ForumDog ForumDog is offline
 
Join Date: Jul 2006
Posts: 84
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Okee dokee, that'll teach me to post untested code! New version which is thoroughly tested and seems to work, if someone else gives it a whirl and it turns out to be the correct can they let me know so I can properly update.

Update:
- The conditional should now be correct so the links will only appear for open forums. It's up to you if you want to change that.
- The search link is now wrapped in a conditional so it doesn't appear when it's not wanted, most likely for Guests, New Thread is also now controlled as far as is possible by the statusicon conditional. Permission to start a new thread is only checked after clicking the link as far as I can tell, so it can't be done perfectly.
- Not a big deal, but added rel="nofollow" in a couple of places where the links aren't any use to search engines.

Code:
<if condition="$forum[statusicon]=='new' OR $forum[statusicon]=='old'">
     <div class="smallfont">
          <if condition="$forum[statusicon]=='new'"><a href="search.php?$session[sessionurl]do=getnew&amp;include=f=$forum[forumid]">$vbphrase[new_posts_nav]</a> | </if>
          <a href="newthread.php?$session[sessionurl]do=newthread&amp;f=$forum[forumid]" rel="nofollow">New Thread</a>
          <if condition="$show['searchbuttons']">| <a href="search.php?$session[sessionurl]f=$forum[forumid]" rel="nofollow">$vbphrase[search]</a></if>
     </div>
</if>
Update: Optional extras:
- Subscription code for each feed type, all conditionals so they'll only appear if you've turned that type on.
- Unsubscribe moved to the linkfest since it seems to fit better there. Be sure to delete the very similar code which appears immediately below where this code is inserted, everything between <if condition="$show['forumsubscription']"> and </if>.

Code:
<if condition="$forum[statusicon]=='new' OR $forum[statusicon]=='old'">
     <div class="smallfont">
          <if condition="$forum[statusicon]=='new'"><a href="search.php?$session[sessionurl]do=getnew&amp;include=f=$forum[forumid]">$vbphrase[new_posts_nav]</a> | </if>
          <a href="newthread.php?$session[sessionurl]do=newthread&amp;f=$forum[forumid]" rel="nofollow">New Thread</a>
          <if condition="$show['searchbuttons']">| <a href="search.php?$session[sessionurl]f=$forum[forumid]" rel="nofollow">$vbphrase[search]</a></if>
          <if condition="$vbulletin->options['externalrss']">| <a href="external.php?type=rss2&forumids=$forum[forumid]">RSS Feed</a></if>
          <if condition="$vbulletin->options['externalxml']">| <a href="external.php?type=xml&forumids=$forum[forumid]">XML Feed</a></if>
          <if condition="$vbulletin->options['externaljs']">| <a href="external.php?type=js&forumids=$forum[forumid]">JS Feed</a></if>
          <if condition="$show['forumsubscription']">| <a href="subscription.php?$session[sessionurl]do=removesubscription&amp;f=$forum[forumid]">$vbphrase[unsubscribe_from_this_forum]</a></if>
</if>
Known Issues:
- If there is no permission to start a new thread or search and there are no new posts to view but the unsubscribe link or a feed link appears then the line will begin with a |. It could be solved with a loooooooot of conditionals but it's not worth it. Change the formatting (use of |) if it bothers you.

Quote:
Originally Posted by Loco.M
umm,,

http://forum.vbulletinsetup.com/f7/3...cribe-rss.html

Code:
<if condition="$forum[link] == ''">
<span class="tinyfont">
 - [<a href="/forums/newthread.php?do=newthread&f=$forum[forumid]" title="Post a new thread in $forum[title]">New Thread</a>] - [<a href="/forums/search.php?forumid=$forum[forumid]" title="Search $forum[title]">Search</a>] - [<a href="/forums/subscription.php?do=addsubscription&f=$forum[forumid]" title="Subscribe to $forum[title]">Subscribe</a>] - [<a href="/forums/external.php?type=rss2&forumids=$forum[forumid]" target="_blank" title="RSS feed for $forum[title]">RSS</a>]
</span>
</if>
...

Code:
<if condition="THIS_SCRIPT == 'index'">
main forums page code
</if>

<if condition="THIS_SCRIPT == 'forumdisplay'">
forumsdisplay page code
</if>
- My code uses session URLs as you are supposed to do, that code doesn't.
- Mine uses conditionals so is automatically adaptable.
- Mine is phrased (admittedly that's barely possible, but I did what I could )
- I know what the THIS_SCRIPT code does, I don't know what it's there for or even where it goes. But I don't think it should be used, it will prevent the links from showing up anywhere else, in the Subscribed Threads forumbit for instance. Come to that I'm not sure that $forum[link] is the correct conditional to use either...
- Mine will display as intended using the existing CSS.

So, as I guessed it had been done before but enough reason to use this one instead.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01077 seconds
  • Memory Usage 1,794KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (4)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.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_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete