vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 4 Articles (https://vborg.vbsupport.ru/forumdisplay.php?f=242)
-   -   [HOW TO - vB4] Create a New Tab in the navbar (https://vborg.vbsupport.ru/showthread.php?t=226914)

Lynne 05-04-2011 03:55 AM

Quote:

Originally Posted by wowautoauctions (Post 2191529)
How can I make my new tab appear first in the list? Using 'navtab_start' makes it the second tab but not the first.

Play with the Execution Order of the plugin.

cellarius 05-04-2011 05:35 AM

Quote:

Originally Posted by TWood (Post 2191506)
Nice! Thanks!

The target="_blank" doesn't work to open a new browser window, at least not at my site:

Shout Street Click on 'Zip Code Maps'

From the source code of your page:
HTML Code:

<li><a class="navtab" href="http://www.usnaviguide.com/">Zip Codes Map</a></li>
The target="_blank" is not present.

wowautoauctions 05-04-2011 05:35 AM

If you are trying to make a tab that links to an already established page such as "content.php?139-blog", I found a solution:

First modify your plugin to include the end piece of your url in this case "/content.php?139-blog". This will enable your tab to be highlighted.
PHP Code:

if (THIS_SCRIPT == 'vbcms' && $_SERVER['REQUEST_URI'] == '/content.php?139-blog'

Next you want to make it so the new tab is the only selected so go to plugin manager and edit "Navbar: Insert CMS Navbar Entry".

Change this:
PHP Code:

if (defined('CMS_SCRIPT') AND class_exists('vBCms_Navbar')) 

To This (except fill in your page name):
PHP Code:

if (defined('CMS_SCRIPT') AND class_exists('vBCms_Navbar') AND $_SERVER['REQUEST_URI'] != '/content.php?139-blog'

Viola!

cellarius 05-04-2011 06:03 AM

Of course both will highlight - the THIS_SCRIPT constant condition is true for the normal CMS tab, too. You need to edit the CMS tab condition to not highlight.

TWood 05-05-2011 11:26 PM

Quote:

Originally Posted by cellarius (Post 2191571)
From the source code of your page:
HTML Code:

<li><a class="navtab" href="http://www.usnaviguide.com/">Zip Codes Map</a></li>
The target="_blank" is not present.

Gah!! Hate it when that happens... :o

Thanks!

Boofo 05-05-2011 11:33 PM

Quote:

Originally Posted by cellarius (Post 2191571)
From the source code of your page:
HTML Code:

<li><a class="navtab" href="http://www.usnaviguide.com/">Zip Codes Map</a></li>
The target="_blank" is not present.

I was too lazy to do a view source.

av8or1 05-30-2011 12:44 AM

Thank you for this writeup Lynne, I used a modified version of it to add a "Home" tab to my forum.

Jerry

attroll 06-13-2011 06:51 PM

1 Attachment(s)
First let me say, great mod.

I have gotten the tab to work but I would like to resolve one issue if I can.

When I click on the tab it brings me to my gallery and the proper tab gets highlighted and stays highlighted. But when I click on the link under the tab "New in last day" then it opens in the gallery again like it is suppose to but it defaults to the "What's New" tab.

I would like it to stay in the Gallery Tab that I created and stay highlighted. Is there a way to do this?

Here is my code and the sample navbar image.

PHP Code:

$tabselected ''
$tablinks ''
if (
THIS_SCRIPT == 'ppindex'

    
$vbulletin->options['selectednavtab']='unique_name'
    
$tabselected ' class="selected"'
    
$tablinks '                <ul class="floatcontainer"> 
                    <li><a href="../gallery/search.php?when=1&whenterm=d&cat=all">New in last day</a></li> 
                    <li><a href="../gallery/search.php?when=1&whenterm=w&cat=all">New in last 7 days</a></li> 
                    <li><a href="../gallery/search.php?when=2&whenterm=w&cat=all">New in last 14 days</a></li>
                </ul> '


}  
$template_hook['navtab_end'] .= '<li'.$tabselected.'><a class="navtab" href="../gallery">Test Tab</a>'.$tablinks.'</li>' 


Lynne 06-13-2011 07:38 PM

New in Last Day is a search? So, the condition for highlighting the search page are being met. You will need to rewrite the condition to highlight the search page to say "but not when doing New in Last Day" and then rewrite the gallery one to include "when doing New in Last Day".

appsfinder 07-08-2011 08:13 AM

Hi lynne how do i make the work for forum uses only eg not guests thanks


Quote:

Originally Posted by Lynne (Post 1907097)
Here's a pretty simple method for creating a new tab in the navbar, along with a submenu to go along with it. All you need is a unique condition for when your tab will be shown. What you will be making is a plugin to create the Nav Link along with a submenu which Link 1, Link 2, Link 3, and Drop Down which then drops down and has SubLink 1, SubLink 2, and SubLink 3. This is shown below.

https://vborg.vbsupport.ru/attachmen...3&d=1258146126


This article is NOT to be used just to add another link to a submenu. It is for creating the Nav Link tab along with all the submenus. Again, if all you want is to add submenus to an existing tab, then this article is NOT for you!!!

This article is also for use by users who understand the basics of conditions and can write them. The navbar is not really an easy thing to play with if you don't know what you are doing - I think even Wayne said it had issues - so don't try this if you don't understand how to write a condition.

OK, with that out of the way....

Here's the basic template for making your new tab:

Create a plugin (Plugins & Products) > Add New Plugin:
hook location - process_templates_complete *
Title - New Tab for Navbar
Execution Order - 5
(* I used to have this listed as global_state_check but then noticed vb themselves use the process_templates_complete hook location, so I changed it.)

PHP Code:

$tabselected '';
$tablinks '';
if (
THIS_SCRIPT == 'yourpage')
{
    
$vbulletin->options['selectednavtab']='unique_name';
    
$tabselected ' class="selected"';
    
$tablinks '                <ul class="floatcontainer">
                        <li><a href="link1.php">Link 1</a></li>
                            <li class="popupmenu">
                                <a href="javascript://" class="popupctrl">Drop Down</a>
                                <ul class="popupbody popuphover">
                                        <li><a href="sublink1.php">SubLink 1</a></li>
                                        <li><a href="sublink2.php">SubLink 2</a></li>
                                        <li><a href="sublink3.php">SubLink 3</a></li>
                                </ul>
                            </li>
                        <li><a href="link2.php">Link 2</a></li>
                        <li><a href="link3.php">Link 3</a></li>
                </ul> '
;


$template_hook['navtab_end'] .= '<li'.$tabselected.'><a class="navtab" href="link.php">Nav Link</a>'.$tablinks.'</li>' 

Things to take note of:

PHP Code:

if (THIS_SCRIPT == 'yourpage'

Your condition MUST be unique! If you use a condition that is also going to evaluate to true for another tab, then they will both be highlighted and the wrong submenu may show up underneath.

PHP Code:

$vbulletin->options['selectednavtab']='unique_name'

The 'seletednavtab' must also be a unique name. Again, if you have two tabs with the same 'selectednavtab' name, then both tabs will be highlighted.

PHP Code:

$template_hook['navtab_end'] .= '<li'.$tabselected.'><a class="navtab" href="link.php">Nav Link</a>'.$tablinks.'</li>' 

You may use a different template_hook here - it just depends on where you want your tab to be - navtab_start and navtab_middle are also available.


ragtek also posted an article to do the same thing only using a template with the plugin - [HOW TO - vB4] Create a New Tab in the navbar (with template)



Originally posted on vb.org 2009-10-27.

Other related articles of possible interest:
[HOW TO - vB4] Remove the vB Default Navtabs
[HOW TO - vB4] Create your own vBulletin page



All times are GMT. The time now is 01:18 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02761 seconds
  • Memory Usage 1,792KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_html_printable
  • (8)bbcode_php_printable
  • (5)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (10)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.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/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.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
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete