How to Structure My URLs?

Getting closer, but still needing some help?! (:

Okay, so maybe a month ago, I had this big “crisis” in that I had too many “Sections” to fit into my Navigation Tabs for each page.

After kicking things around over the last few weeks, I think I have come up with a pretty good “Information Architecture”, however, I could use a little help and advice finishing it off so it is a winner!! :blush:

To fix things, first I decided that instead of trying to cram 15-20 topics into my Navigation Bar, I would just create maybe 4-5 broad “Categories”.

They are…


- Finance
- Legal
- Management
- Operation
- Marketing

Then I kept all of the groups I originally had, and called them “Sub-Categories”.

The trick to making things complete and yet flexible, was to create a grouping of Sub-Categories called “Dimensions”…

What this allows me to do is “mix-n-match” different concepts (e.g. Target Audience or Business Structure) under one larger topic (e.g. Legal).


So here is where I could use some advice…

For purposes of a good End-User Experience, should I just have a “Category” and “Sub-Category” in the URL like this…

[INDENT]www.mysite.com/management/hybrid/how-to-balance-a-physical-and-online-business[/INDENT]

Or would it be better to add in the concept of a “Dimension” in the URL like this…

[INDENT]www.mysite.com/management/business-structure/hybrid/how-to-balance-a-physical-and-online-business[/INDENT]

Obviously the second example is clearer to the end-user, and probably helps them follow how the zillions of topics on my website are organized.

However, the downside is that the second approach would make my mod_rewrite a little trickier, and would definitely add more complexity - although not tons - to my PHP and MySQL that I use to sanitize the URL and serve up the page

[ot]I like my concept of “Dimension”, because it allows me to avoid having a grossly complex, and NESTED, architecture playing out every combination, for example…

www.mysite.com/management/sole-proprietorship/hybrid/how-to-balance-a-physical-and-online-business

www.mysite.com/management/partnership/hybrid/how-to-balance-a-physical-and-online-business

www.mysite.com/management/s-corp/hybrid/how-to-balance-a-physical-and-online-business

www.mysite.com/management/llc/hybrid/how-to-balance-a-physical-and-online-business

So instead of trying to come up with every combination, I just list articles which relate to a “Dimension” and then I can always cross-reference the same article in another “Dimension” like this…

www.mysite.com/finance/accounting/taxes/why-you-should-hire-a-cpa

www.mysite.com/legal/type/tax-law/why-you-should-hire-a-cpa

www.mysite.com/legal/type/litigation/suing-to-protect-your-brand-name

[/ot]

Any thoughts on this??

Sincerely,

Debbie

Largely it doesn’t matter, but I’d make them as pretty as possible and easiest to type or copy & paste
For individual pages I’d remove the directories:
/how-to-balance-a-physical-and-online-business

I’d make the high level grouping url’s work too though:
/finance
/legal
/management
/operation
/marketing

You lost me here, Mark?!

You are saying make my URL’s pretty, but then remove directories? :-/

What is wrong with something like either of these…

www.mysite.com/management/business-structure/hybrid/how-to-balance-a-physical-and-online-business

www.mysite.com/management/hybrid/how-to-balance-a-physical-and-online-business


If you really meant what you said, then all I would have is…

www.mysite.com/how-to-balance-a-physical-and-online-business

…and that defeats the entire purpose of “Pretty URLs”?!

I’d make the high level grouping url’s work too though:
/finance
/legal
/management
/operation
/marketing

Already have done that.

Sincerely,

Debbie

Either way would work, but if you make it too long, then it will become less likely for your customers to use them. Keep them simple. I know the pretty URL will get you some seo link juice, but not enough to make it difficult for your customers to remember/use. Personally, I’d drop the url down to the simplest form for your site and use a breadcrumb to show the structure. Something like: www.mysite.com/article/how-to-balance-a-physical-and-online-business

This allows you to use a pretty URL but isn’t too overwhelming for joe and jane webuser. Look at the SP urls for the main site (you can’t look at the forum URLs - that’s vBulletin **** links with a seo plugin added on). There’s no categorization or anything - just the article/blog post name.

Here’s an interesting read that is kind of related to this subject: http://www.not-implemented.com/urls-are-for-people-not-computers/

So how long is too long?

On the back-end I’d like to keep this new structure that I’m working on, which is…

[indent]Category > Dimension > Sub-Category > Article[/indent]

But what if I back things off a notch, and take out “Dimension” from the URL? Then my URL’s would look like this…

[COLOR=“#0000FF”][INDENT]www.mysite.com/finance/accounting/why-you-should-hire-a-cpa[/INDENT]

www.mysite.com/legal/s-corp/benefits-of-incorporating-your-small-business

www.mysite.com/legal/online/make-sure-you-are-charging-sales-tax

www.mysite.com/marketing/going-live/how-to-tell-the-world-about-your-new-business

[/COLOR]
Don’t those URL’s seem informative and yet not too long??

Keep them simple. I know the pretty URL will get you some seo link juice, but not enough to make it difficult for your customers to remember/use. Personally, I’d drop the url down to the simplest form for your site and use a breadcrumb to show the structure. Something like: www.mysite.com/article/how-to-balance-a-physical-and-online-business

Well, currently I have something like this…

[INDENT]www.mysite.com/finance/articles/why-you-should-hire-a-cpa[/INDENT]

…but all I am really doing is swapping out the generic articles/ with a more descriptive Sub-Category like accounting/

So that really doesn’t add anything on to the length.

I can see how your URL has some merits, but Breadcrumbs can be a real nightmare programming-wise, and I’m just not ready to take that leap with my code. :frowning:

This allows you to use a pretty URL but isn’t too overwhelming for joe and jane webuser. Look at the SP urls for the main site (you can’t look at the forum URLs - that’s vBulletin **** links with a seo plugin added on). There’s no categorization or anything - just the article/blog post name.

Here’s an interesting read that is kind of related to this subject: http://www.not-implemented.com/urls-are-for-people-not-computers/

I see what you are saying, but considering that I have over 60 Sub-Categories, it seems that just lumping everything together in 4-5 broad Categories offers too little organization, you know?

My hope by at least adding a “Sub-Category” to the URL - if not the “Dimension” too - is to help people see…

1.) How my website is structured

2.) How Articles are cross-referenced across different “Dimensions”

Follow me?

Sincerely,

Debbie

Too long.

Precisely.

It’s too long if the chances of typos gets annoying.

Back-end has nothing to do with URL structure. You can keep the back-end however you want it, but still use a usable URL.

Personally, those are way too long for me.

Put it this way - the site I used to run for my barbershop chorus had a long main URL - our members found the URL too long, not to mention the public, so we ended up getting one much shorter which forwards over to our original…

But it doesn’t really add value…just my opinion though.

Not sure I understand this at all - you should have the basic framework of this navigation process in your sitemap page (you do have one of those for the search engines, don’t you?). Start with the article, find it’s sub-category and keep looping up through the parents until you get the root.

If your database is structured right, this should be a REALLY simple step.

Again, URLs have NOTHING to do with site structure. They are a means to an end, and that end is to get the customer to the content, and the harder you make it for people to get to the content, the fewer customers you are going to have.

Yup, but honestly, I wouldn’t care. And if I’m a developer, and I don’t care, then joe and jane webuser are going to care less. Most people don’t try to decode URLs to guess where your content is - they’d rather have the breadcrumbs or a decent menu structure. Then a sitemap, and then finally, they might go to the URL. But if they get to that point, you’ve probably lost them…

David,

**First let me put in the disclaimer that I like you and value your opinions in general, but your responses below have me scratching my head! :scratch: :lol:

Why would any normal user ever be typing in the Address Bar?! (Except maybe to chop off the ending of a URL to go up to the parent directory?)

Back-end has nothing to do with URL structure. You can keep the back-end however you want it, but still use a usable URL.

Well, in the past, when I load an Article, I check the URL as part of the “sanitizing and validation” process. (Although since an Article Slug is unique, technically I wouldn’t need to do that.)

Personally, those are way too long for me.

Put it this way - the site I used to run for my barbershop chorus had a long main URL - our members found the URL too long, not to mention the public, so we ended up getting one much shorter which forwards over to our original…

How is this too long…


www.mysite.com

(That is almost exactly what you would see if you landed on my Home Page…)

But it doesn’t really add value…just my opinion though.

Love you, but I think you’re way out in Left Field on this one.

You are saying you want Breadcrumbs and yet you want the URL to be almost non-existent?!

Last month I had a similar conversation, and the consensus seemed to be… “If you have clean URL’s and a clean site structure, Breadcrumbs don’t really provide much extra value unless you are building an e-commerce site.” (That is the same conclusion I came to.)

I don’t understand why you want a shortened URL like this…


www.mysite.com/make-sure-you-are-charging-sales-tax

…but then you want a Breadcrumb spelling things out like this…

Legal > Tax-Law > Make Sure You Are Charging Sales Tax

“Six of one, a half-a-dozen of the other…” :wink:

Not sure I understand this at all - you should have the basic framework of this navigation process in your sitemap page (you do have one of those for the search engines, don’t you?).

Now he is going to nail me… :rolleyes:

If I understand what you are saying, “No, I don’t have a ‘Site Map’”

Does my website have easy Navigation? Yes!!!

And in the past did I go to some 3rd-party website and generate a “Search Engine Site Map” for Google, “Yes!”

But I don’t think my website has what you are referring to. (So maybe you can help “edumacate” me…) :lol:

Start with the article, find it’s sub-category and keep looping up through the parents until you get the root.

If your database is structured right, this should be a REALLY simple step.

If you go to this other thread, you can see my proposed Table Structure here…

Assuming my ERD meets your approval, can you please help me figure out - at least conceptually - how I’d build a Breadcrumb from that??

Off Topic:

Personally, I’m all for Breadcrumbs if I could learn to make programmatically and they didn’t clutter up my website…

Again, URLs have NOTHING to do with site structure. They are a means to an end, and that end is to get the customer to the content, and the harder you make it for people to get to the content, the fewer customers you are going to have.

Well, this is where we seem to disagree.

I can’t image - if given the choice - why anyone wouldn’t want a “Pretty URL” that shows where each webpage logically fits into the “Information Architecture” of the website?! :eek:

I see the URL the same as when I am looking at the Directory Path for a file on my computer.

Now, I agree that the way I have things organized on the back-end is quite different from the URL, however, in my mind the URL should match up exactly with the Logical Structure of my website, and if it doesn’t then it is a detractor…

I have a section called “Legal”, and if you click on that navigation tab, you are taken to a “Legal landing page” which includes sub-sections including “Tax-Law”, which in turn has links to related articles including “Make Sure You are Charging Sales Tax Online”.

So as you navigate my website physically, things are set up like this…

Legal > Tax-Law > Make Sure You Are Charging Sales Tax

More so, logically that is also how things are structured.

So - in my mind - if I can make the URL reflect the Physical-Layout and the Logical “Information Architecture”, then it further reinforces things…

Could I also add a Breadcrumb? Sure, but with the URL’s I hoped to use, there wouldn’t be much need…

Yup, but honestly, I wouldn’t care. And if I’m a developer, and I don’t care, then joe and jane webuser are going to care less. Most people don’t try to decode URLs to guess where your content is - they’d rather have the breadcrumbs or a decent menu structure. Then a sitemap, and then finally, they might go to the URL. But if they get to that point, you’ve probably lost them…

I’ll wait for your response…

Sincerely,

Debbie

this is my vote…

mysite.com/management/hybrid/how-to-balance-a-physical-and-online-business

Make it simple and compartmentalized for you, the user, and google.

It happens more than you think…especially if they would get something in print (emails printed, etc) - which happens a LOT more than is expected, especially with the older generations.

That’s not. But I would argue that www.mysite.com/management/business-structure/hybrid/how-to-balance-a-physical-and-online-business is. My point was that if people were having problems typing in the site URL (which was fixed obviously), then having a long structure to deal with allows for a lot of typos (missed slashes, reversed letters, etc.)

No, it’s not. Personally, having multiple ways to get to the same article

www.mysite.com/management/sole-proprietorship/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/partnership/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/s-corp/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/llc/hybrid/how-to-balance-a-physical-and-online-business

All pointing to the same article. Number one, you’ve got the potential of getting hurt by the search engines for duplicate content (note - this might be an old issue, but it used to be a serious one). Number two, someone coming in from the cold is going to be wondering what the difference is between these different articles when in reality it’s the same.

As soon as you’ve got all these ways to get to the same article, your “clean structure” just went out the window. It may be well-organized as there are logical reasons for the articles to be where they are, but it’s not clean.

So, every time you add a new category, sub-category, article, etc., you’re going to go that third party website and create a new search engine site map? Seems like an awful lot of work to me, and one more thing to forget to do.

Here’s a quick & dirty (and bit ugly tbh) example I found on a quick search. It gives you the basic idea on what needs to be done: http://stackoverflow.com/questions/4018919/how-to-create-a-sitemap-using-php-mysql

Honestly, I don’t see the complete ERD there, so I can’t comment on it. I think I can see where you’re going, and I think it’s a bit overly complex for my taste. A category, sub-category and dimension are all the same, so I don’t see why they need to be in separate tables. One table (Category - ID, Name, ParentCategoryID) meets the need, and ParentCategoryID would be null for the root category.

You could then have a crossover table which ties articles to category. (ex: ArticleCategory -ArticleID, CategoryID)

Off Topic:

Pseudocode for breadcrumbs and sitemaps using my quick & dirty structure

  1. To get a breadcrumb
    [LIST=1]
  2. Find the categoryID for the article, then get the category record.
  3. If the parentCategoryID is not null, get the category record using that value
  4. Repeat step 2 until the parentCategoryID is null
  5. Now starting with this most current record, build the breadcrumb.
    [/LIST]
  6. To get a sitemap, do the opposite
    [LIST=1]
  7. Find the categories where parentcategoryid is null. Call this level1
    [LIST=1]
  8. Find all category records where the parentcategoryID = level1.id. Call this level 2
    [LIST=1]
  9. Find all category records where the parentcategoryID = level2.id. Call this level 3
  10. Repeat steps until there are not category records with the parent categoryid of the current record.
    [/LIST]
    [/LIST]
    [/LIST]

Both of these could be done easily using stored procedures. Just keep calling the stored procedure until the value is empty, the recursive calls will then build the structures you want. You could return the html or (more properly) arrays which contain the data which can be parsed into html

Have you looked at the URLs for twitter and/or facebook? The twitter url is twitter.com/username. Facebook is the same. There’s no hint of information architecture there…

And how do these links show an information architecture for a site?

www.mysite.com/management/sole-proprietorship/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/partnership/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/s-corp/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/llc/hybrid/how-to-balance-a-physical-and-online-business

If you keep it to a level or two, sure. But as soon as you start using three and four “folder” structures, it loses all effectiveness. Even the site you’ve used as an example before, bloomberg.com, doesn’t go more than a level or two deep.

And here’s something else you need to consider - not all people think like you do. Especially small business owners (which I think is your target audience?). Small business owners, unless they’re accountants or lawyers or something similar where their profession is “logical” and black and white, are going to be more the creative types, or else people like my wife who just want to get where they want easily, and changing the URL is not easy to her (especially on tablets - she hates typing on a tablet).

As for the breadcrumbs, the more “deep” you make your site, the more critical an easy navigation is going to be. Don’t make me have to change the URL to get to another portion of your site (using your examples, should I go back to hybrid? Or the level above? Or all the way to management?). Same with having to use a big menu structure…those concepts are so 90’s.

Just my opinion who has a “logical” mind but deal with enough creative types

If my PR was 9 or 10 getting a few billion hits a day then I would make my URL’s pretty too. But for the normal site that is fighting tooth and nail just to show up somewhere in the top 100 then pretty is out as far as I go.

Yes, but she’s specifically talking about pretty URLs.

Fair enough.

That was an earlier example. I agree that one is too intense.

We agree, but my point was that - as I see it - the way you read a “Pretty URL” is nearly the same as how you read a Breadcrumb.

Your stance seems to be, “People like and can easily read Breadcrumbs, but they tend to shy away from reading Pretty URL’s…”

You may be right, but to me, a “Pretty URL” and a Breadcrumb are nearly identical from how you read them. That is what I was “Six of one, a half-a-dozen of another” ing about! :wink:

Well, several months ago I consulted with people here on SitePoint about this topic, and the consensus was, “It is a good thing to cross-reference the Same Article in Different Sections of your website. Users will appreciate this because they won’t have to search for things - it will be in the Section they care about. And Search Engines shouldn’t care either, as long as you aren’t doing this 10 times for every Article?!”

So I’m sticking with that game plan.

More importantly, though, you unintentionally are taking what I said out-of-context… :cool:

The URL’s above are examples of what I was trying to AVOID…

I was saying earlier in this thread that I wanted to avoid DEEP threads because - like you - I think that having numerous levels would confuse things. (And be a maintenance nightmare.)

Lemme do a deeper dive into what I was trying to say…

If I took a traditional approach to my website, and I had 2 competing concepts like Business Structure (e.g. Sole Prop, S-Corp, C-Corp, LLC) and Business Presence (e.g. Brick & Mortar, Online, Hybrid) which BOTH applied to an Article, then I might “AND” things and create - you’re a techy so you’ll get this - a “Cartesian Product”. (I was trying to show that above with the BAD URL’s…)

So the “brilliant” idea I had a few days ago was to introduce the concept of “Dimension” to my website.

Instead of seeing “Business Structure” and “Business Type” as things which need to be NESTED, I decided to “level the playing field” and treat them as EQUAL.

So “Business Structure” is a “Dimension”. And “Business Type” is another “Dimension”.

They are siblings, not Parent-Child, because it would be a “Chicken and Egg” syndrome?! :eek:

But there is still the issue that some Articles apply to both “Dimensions”.

No big deal.

Instead of trying to cram disparate concepts (e.g. LLC and Brick & Mortar Business) together, I just place the Article in each Section.

Then, people who care about S-Corps will come across this related Article. And people who are debating about whether to have a Brick & Mortar Store or an Online Store will also come across it.

So instead of doing this…


www.mysite.com/management/sole-proprietorship/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/management/partnership/hybrid/how-to-balance-a-physical-and-online-business
www.mysite.com/[b]management/s-corp/hybrid/[/b]how-to-balance-a-physical-and-online-business
www.mysite.com/management/llc/hybrid/how-to-balance-a-physical-and-online-business

I do this…


www.mysite.com/[b]legal/s-corp/[/b]how-to-balance-a-physical-and-online-business


www.mysite.com/[b]management/hybrids/[/b]how-to-balance-a-physical-and-online-business

(These are contrived examples…)

I don’t think so.

First of all, one is under Legal > Business Structures > S-Corps, and the other under Management > Business Types > Hybrids.

If someone is so eager about my website that they come across the same Article twice, I believe they will be perceptive enough to “get” that it is just the same Article being cross-referenced…

But again, you were referring to the “bad” URL’s.

With what I just re-explained above, I only have TWO LEVELS. (That shouldn’t be overly burdensome to most people.)

You got me on that one, David!! :blush:

But considering that my website is more than just Articles, and even if I could write a PHP script to iterate through my Category>Sub-Category>Article structure, I’d still have the issue of how to handle all of the other webpages and different structures for my website?!

So, I’d say I’ll just have to do things the manual way for now. (Which shouldn’t be a big issue, because it is not like I am the NY Times and have 100 new Articles every day?!)

Right. I only outlined the few tables which pertain to Articles and the organization of them…

Possibly. I think r937 had a similar feeling/idea as you, however, it was just too much for me to wrap my head around for this build.

I’ll have to play around with this.

If I go with the tables I showed you in the link above, I guess it might not be as hard as I thought to build Breadcrumbs, but we’ll have to see…

It is also FaceBook!!! (Known for it’s horrible architectural decisions - or lack thereof?!)

They don’t. But my site does… :wink:

We agree!

(I think the confusion over what I was saying was a “good” and “bad” example above may have caused some undo confusion…)

True.

Agreed.

Okay.

Okay.

Thanks for your 2-cents so far!!!

I look forward to see what your responses are to my replies… :slight_smile:

Sincerely,

Debbie

I think the one is liable to keep in mind that while getting the people attract towards your website URLs you are suppose to structure the same in such a way that it looks clear to the user, so that he can grab a good amount of knowledgeable aspects from the same.