g1smd - 9:28 pm on Mar 24, 2010 (gmt 0)
g1smd, but then you are missing a whole lot of situations with your single URL. What if a product naturally belongs to Widgets, Gadgets, and SuperGadgets on Sale categories?
With your single URL, you have no clue which particular section user is on.
And how would you display breadcrumbs for this product if categories are not inclusive? Would you display as 3 separate breadcrumbs? sounds silly.
No. It's really very easy to build a personalised category tree for the visitor.
You need to set up cookies named Level_1, Level_2, Level_3, Level_4, and so on for however many navigation levels there could be on your site.
In your database and/or in your CMS/cart logic you assign a 'navigation level' to each page. When going to a 'lower level' within the site, the cookie data for the 'next level up' last visited page is sent to the browser.
For levels that involve a user search input, the cookie data is sent to the browser as the search results page is shown, that search result being 'one level down' from the search page. The cookie should contain the keywords that were typed in in that previous search.
On any page, anywhere on the site, the breadcrumb trail is built simply using each of the 'last visited category' URLs (gleaned from that visitor's cookie data) for each of the levels above the currently visited level.
For users accessing the pages, but where cookies are not stored and used (especially where users are search engine bots), the database data can be used to build a 'default' breadcrumb trail (i.e. not based on any previous visitation path) on the current page, and for any page of the site - and in so doing can herd the bot to follow the best navigation paths.
Sideways pointing 'customers also looked at/bought...' up-sell links, and 'find more category1', 'find more category2', 'find more category3' product links, complete the picture.