The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
[HOW TO - vB4] Create a New Tab in the navbar
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. NOTE: This is for 4.0.x and 4.1.x. In 4.2.x, you should be using the Navigation Manager. 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:
PHP Code:
PHP Code:
PHP Code:
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 |
#492
|
||||
|
||||
Have you tried spitting out $_SERVER['REQUEST_URI'] on the page to verify you have it set correctly for the page? It may be different than in that example based on the type of Friendly URLs you are using.
And did you make the change to the plugin also? |
#493
|
|||
|
|||
Quote:
--------------- Added [DATE]1323682221[/DATE] at [TIME]1323682221[/TIME] --------------- Quote:
--------------- Added [DATE]1323688580[/DATE] at [TIME]1323688580[/TIME] --------------- I have finally found a way that works, with this condition: Code:
if ($_SERVER['HTTP_REFERER'] == 'http://www.piacenzacalcio.net/vb/content.php?3-prossima-trasferta') Code:
$tabselected = '';
$tablinks = '';
if ($_SERVER['HTTP_REFERER'] == 'http://www.piacenzacalcio.net/vb/content.php?3-prossima-trasferta')
{ $vbulletin->options['selectednavtab']='prossimatrasferta';
$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> ';
*/echo $tablinks;
die();*/
}
$template_hook['navtab_end'] .= '<li'.$tabselected.'><a class="navtab" href="content.php?3-prossima-trasferta">Prossima trasferta</a>'.$tablinks.'</li>' ;
|
#494
|
|||
|
|||
UP, it would be great to have something like
Code:
$tabselected = ''; $tablinks = ''; if (THIS_SCRIPT == 'test' OR in_array($GLOBALS['forumid'], array(58, 59, 60, 56))) THIS_SCRIPT == 'test' -> vbcmspage forum.id -> section.id Any ideeas? |
#495
|
|||
|
|||
Forgive me if someone asked this, but I didn't see anything like this in the comments. I want a tab on the navbar to randomly link to one of a couple dozen websites. I found code to do this with javascript or with php, and the code works fine, but I can't figure out how to incorporate it into the code for the tab.
Here's one of the codes I found for making a random link: PHP Code:
PHP Code:
|
#496
|
||||
|
||||
It would need to be something like this:
PHP Code:
|
#497
|
|||
|
|||
I'm not sure why, but it didn't work. This is the full version of the last line, just to make sure I inserted the code correctly:
PHP Code:
Code:
Warning: Unexpected character in input: ''' (ASCII=39) state=1 in /home/mernet/public_html/index/includes/class_bootstrap.php(555) : eval()'d code on line 62 Parse error: syntax error, unexpected '<' in /home/mernet/public_html/index/includes/class_bootstrap.php(555) : eval()'d code on line 62 |
#498
|
|||
|
|||
Quote:
Code:
$template_hook['navtab_end'] .= ('<li'.$tabselected.'><a class="navtab" href=$links[$rand]>Nav Link</a>'.$tablinks.</li>');
|
#499
|
|||
|
|||
Simonhind, I just tried the code you suggested. It didn't give the "Warning: Unexpected character in input" error, but it did still give the parse error about the '<' bracket. Here's the full error message.
Code:
Parse error: syntax error, unexpected '<' in /home/mernet/public_html/index/includes/class_bootstrap.php(555) : eval()'d code on line 62 |
#500
|
|||
|
|||
Im not sure why, but I cannot get ANY tabs to show up to the right of the what's new tab. Ive tried Mods (from vb.org) as well as this. Ive tried this code stock. I cannot get ANY tab to show up to the right of my "What's New" tab.
Currently I only have FORUMS, and WHATS NEW. What could be the issue? Any help please? |
#501
|
|||
|
|||
does anyone know the css to increase the height of the tabs
------ edit : found the styvar, now thats looking better --------------- Added [DATE]1327405000[/DATE] at [TIME]1327405000[/TIME] --------------- Quote:
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|