Different top navs, same website--how hard is it?
July 20, 2012 6:51 AM   Subscribe

Website design question: how difficult is it to have a slightly different top navigation bar for different sections of the same website?

The website developer creating a website for our company did a top navigation structure. The site is done and we're reviewing it before launch. We realized that we'd like to have the top navigation section appear slightly differently on one section of the site than it is on the rest of the site. I know this isn't very typical, but for the purposes of this question, just trust me that we have good reasons for wanting that.

My question is: how difficult, programming-wise, is such a request? Can you help me understand why this is or isn't a difficult thing to accomplish?

Many thanks!
posted by aka burlap to Technology (10 answers total) 3 users marked this as a favorite
In a semi-abstract sense, this shouldn't be difficult at all, though the particulars will depend upon questions like what if anything is being used to manage the site. But any decent CMS/framework will have all sorts of functions that let you say things like "if on [some page], load [regular nav] otherwise load [alt nav]." Not all of them have an immediate concept of "site sections" (versus the more common "categories" for eg. posts), but it can likely be munged in.
posted by Su at 7:00 AM on July 20, 2012

One minor caveat to the above which I usually bring up to clients, though, is that once an exception exists it will very often lead to others. Or: what's to stop you from coming back and wanting special nav for some other section? So it's often better for everyone to build things in such a way that the exception becomes something more like an option that can be applied in any potential case. That usually requires a little more up-front work, but makes things easier later. This also sometimes turns into a "do we really need this?" discussion.

There's a blog post I ran across a while back from the guy who created NetNewsWire I think which explains this better. In it he talks about how with options there's no such thing as 2(or 3, etc.) They should be built to either apply exactly 1 time, or many times. I'll see if I can hunt it down.
posted by Su at 7:07 AM on July 20, 2012

If it's Wordpress it is very easy. Really, it's pretty easy in just about any modern CMS or framework. At worst, you might have to copy the header file, edit and rename it, and use a one-off header file on the one page that you want to be different.
posted by COD at 7:09 AM on July 20, 2012

Thanks for the answers so far--just to clarify, it's not in Wordpress. The web development company that's creating the website for us has their own proprietary CMS and analytics system, we're paying them in the $10-20k range to do the site, etc.
posted by aka burlap at 7:29 AM on July 20, 2012

Also, I should explain that the nav structure is multi-layered: in addition to this ultra-top nav, there's an additional horizontal navigation bar that appears on every page that we don't want changed.
posted by aka burlap at 7:32 AM on July 20, 2012

When you say "appear slightly differently", do you mean you want different content in it or just a different appearance. If it's the latter (e.g., different colors, background images, etc), it should be easy to do: just put an id or class (because they may already be using the id) on the <body> tag that refers to the section. Then you can override the styles that apply to the navigation bar for just that section. For example:

Most pages

Special section
<body id="special-snowflake">

Then in the CSS:

#top-nav {some styles;}
#special-snowflake #top-nav {override the styles above;}

posted by yerfatma at 7:48 AM on July 20, 2012

So, just to compare, this would be like changing the list of subsite links at the very top of metafilter based on which page you are on without changing anything else, right? e.g. Instead of Podcast and IRL it says Travel and Recipes.

Quite honestly, depending on the implementation strategy this could be really easy, or this could be slightly complicated (shouldn't be more than that). If they started with the requirement that the top nav is always the same for all pages, that may have taken them down a path that they would not have otherwise gone down. Regardless, though, there should at least be an inelegant, one-off solution available.

I think that you should also ask yourself the likelihood that:
a) Sometime in the future, you'll want to do this for another page.
b) You will want to be able to change it yourselves without assistance from the webdev company.

The answers to both of these questions could introduce further complications and increase difficulty/time/cost.
posted by Jacob G at 7:51 AM on July 20, 2012

I would say it shouldn't be hard. Most sites have some form of this. Like when you are on the contact page there is no link to the contact page because you are already on it. Or when you are in the "Stuff" page the Stuff tab is highlighted.
posted by cjorgensen at 8:00 AM on July 20, 2012

No one can tell you exactly how difficult or time-consuming it is without knowing how the CMS works, what the site structure is, and a few other details.

Also "appear slightly differently" is so subjective that it could mean changing anything from a background image to swapping out the entire global navigation. More detail on this would get you a more detailed answer.

Ok, at the very least you need to ask your vendor this question: "Is the site navigation determined by the site structure within the CMS?"

Many wonderful CMSes do it this way (particularly the mid-tier commercial ones just above your price range), and although there are usually workarounds, they involve custom programming to show/hide things manually. Such programming is usually an order of magnitude easier when it's planned for up front--before anything is developed. But how the vendor's proprietary CMS works is anybody's guess, which is why you need to ask them.

If your site's structure determines your navigation elements, the workaround (extra programming, extra cost) is probably required. If it doesn't, then it would in theory be easier.
posted by ImproviseOrDie at 1:52 PM on July 20, 2012

I have to add a vote for "it depends". You mention that you're in the review-before-launch phase now, so you're making a last-minute request for a change? If they've already built the site around having permanent navigation, depending on how that was done, it really could be a bit of trouble to change. There are almost always hack-y workarounds, and as mentioned upthread a purely stylistic change could be accomplished through some CSS changes, but again, depending on how large and complex your site is, even that's not always a simple change.
posted by lillygog at 4:02 PM on July 25, 2012

« Older Finally ready to let go of my MP3 cache   |   How can I get analytics for IT support requests? Newer »
This thread is closed to new comments.