Pre-Prepare Site Navigation

Recently I had a revelation: the navigation framework for a new web site should be put in place first,before you begin to load content to the site,before you design the site,even.

I was mostly used to working with a site already created,using the already in place page titles to name the new pages.If they had a page named About I made a new page called About for the new pages.Simple.

But I ran into a problem while designing the Jason Van Hoose site.
A built-from-scratch site, it required many pages, ideally linked dynamically.

(if you care I’ll explain later why I didn’t use an include for this)

I found a great XML script that built a navbar and loaded into a div with the correct id. I worked with the css provided with the script to blend it with the colors of the new site.And everything looked and worked great.So I thought. I asked a friend using a mac and Firefox to test out the site.

She gave really great feedback, demonstrating in a video the disaster of functionality the navbar was. A dropdown on hover navbar,the dropdown didn’t stay dropped down long enough to click on the links. For my machine, my roommate’s machine(both pc’s) and my other roommate’s machine(a mac) it worked just fine. But for my friend it did not. I was tempted to say well, she must have an old browser,machine,etc, &others visiting the site,say,80% of the visitors will be able to use the navigation.

I was tempted but I couldn’t do it. Cutting out even 2 % of potential visitors is a bad idea. Ideally anyone visiting your site can use every feature regardless of what browser/machine combo they use.With something as important as navigation you really can’t experiment too much.

And so why didn’t I just use a php include? So easy,so great,you update one file and whammo,the whole site is updated. Well, it’s a long story.Each painting’s page was made up of an index.php file,a template.inc.html file and a popup.php file.There was a folder for images with 2 folders inside that for thumbs and larger images.There were text files,also, with the same name as the jpg images,they popped up along with the larger image to describe the photo.The creator meant this package to be used for an entire site.The thumbs themselves would be the navigation. My client wanted each painting to be displayed alone with 3 to 5 thumbs with different views of the painting.So, I loaded the sets of files for as many times as I needed them for each different painting to it’s own folder. How I didn’t get overwhelmed with the organizational nightmare of uploading,naming and sorting of that many pictures,I don’t know.

I spent some time trying to work with the exsisting template to get an include to work.You all know that php won’t work as php in an html file.You have to add a directive to your .htaccess file to get that to happen. But I was too new to this to get that working. My client was following my progress and expecting a finished site in a short amount of time. I felt it wasn’t fair to make him wait for me to grasp a new concept in order for his site to be finished.

I am intending to learn how to make an html page use php includes,though!

Long story short, I ended up using javascript breadcrumbs ,sort of, to set up next and previous links on each page.

Then I read that next and previous names for links are bad. You should title a link with the name of the page. However, I felt that since this was essentially a big portfolio album kind of site meant soley to display photographs of paintings, that next and previous was sufficient. I’d seen it used countless times for other albums.It seems perfectly reasonable and intuitive for any visitor to figure out. Clicking “next” takes you to the next picture,clicking previous takes you back to the previous picture. Clicking a next link to get to a different kind of page like an “about us” page, not such a good idea.

Author’s note:

I used a free script from somewhere that is no longer supported at all so my letters of help were never answered by the writer of the code.

This is not unusual and it didn’t stop me from fixing various problems myself.Thank god for coders forums.

Needless to say I will never begin a new project based around this application because it was written in such a way a lay person couldn’t have a chance in hell of customizing it.

I deleted 2 posts.

I don’t think anyone saw them but in case you did I had to do it.I never forgot that folks would read what I wrote but I didn’t think certain folks would read it. I wasn’t sure these folks could read. Kidding. Anyways, no more talking shop in that way in my public blog. Bad.

Listening to reason

I was designing the menu pages for a client’s website.It clearly wasn’t working as I had presented it with pure css.In fact,what it needed and what the client was asking for was that the menu be displayed in (gasp) tables.
I did remember this article by 456 Berea St.
about how designers who took the css only pledge are often spiting themselves.Because what happens is we try to make a page using only css when we could style the tables with css and let the tables do what they are made to do;display tabular data. And i love code’s writer once wrote to me saying she used tables when they were needed. This also made me think. Tables could be needed? When? Where? Why? I found out while trying to set up the lines of the menu(a literal menu) so that the food was over here,the price was well over there and there was a nice,neat line break betweeen all the items.
I can show you an example of a site I just built where I realised that inserting a tiny little Table where it was needed was ok.It was more than ok, was what the site needed.I’m not sure if it is semantically correct but I skipped semantics in school,anyway. So here I am using tables. Not that I really ever got into them,before. Because I got into web site design well after the css only,ever! ravers had had their say.
What got me thinking about this issue was my personal approach to design and development. I tend to grab what I need and integrate it into my designs;applications and such…like those nifty calendars or other premade widgets. Often there seems to be no other way to present the information of a calendar…basically a grid…you know…without using tables.And everyone loves those calendars. Ok enough wiffle. I just learned that it’s ok to use what you need to use that’s all.