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.)
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.
So, the actual tab needs to link somewhere first? Even if I just want the tab with a submenu with links?
Yes. There is another article on making the navtab an actual dropdown. Perhaps that would be better for you. (it's an article in this same forum, I'm sure you can find it.)
Thank you Lynne, it really helped me, i created an "ibproarcade" tab using (THIS_SCRIPT == 'arcade') as it's mensioned in arcade.php file, and i created 2 other tabs with no "if" for non VB pages
The tab itself shows up on all my pages, even my vBa main page, but I still cannot for the life of me figure out how to have the "Home" button be highlighted when it is selected.
If I click on it, it takes me to my main vBa portal page (www.egcglobal.com) but it is the "Forum" button that stays highlighted.
Anyone have any ideas on how to fix this?
[SOLUTION BELOW]
Ok, so for anyone else who may be having the same issue as I was, if you are running vBa and want a "home" button, your plugin should look like below. Just remember to change the URL to your main page.
I did that and it worked smooth. And I figured it out why it was happening. Just in case someone else is facing this problem, its defined in the vbadvanced php file, similar things can happen if used with other php files. Just a Tip.
Thanks again.
You Rock. Thanks. This fixed my problem with the "Forum" button staying highlighted.
--------------- Added [DATE]1320588568[/DATE] at [TIME]1320588568[/TIME] ---------------
Quote:
Originally Posted by Hippy
loook in the file and search for THIS_SCRIPT
and see what it says then add it to the admincp option where you added the new tab
if it's vbadvanced it should look like this
THIS_SCRIPT == 'adv_index'
define('THIS_SCRIPT', 'adv_index');
Thanks. I just did that before I saw your suggestion
How would I go about doing this for the Calender and the Groups in vb4.1.7 and will there be any problems going to 4.1.8 . I am not sure what sub menues I would need I just want it to be out front and not hidden.
How would I go about doing this for the Calender and the Groups in vb4.1.7 and will there be any problems going to 4.1.8 . I am not sure what sub menues I would need I just want it to be out front and not hidden.
Please help. This worked very well and I got the new tab set up but for some reason it will only let me have six links. When I add the seventh link the page goes haywire! Any ideas?
Sure, don't have more than six tabs! There is just not that much room to have a ton of tabs there. Consider a dropdown tab instead (different article).