views:

382

answers:

1

i am try to build a web site, it has a 2 level menu.

global|asia|euro|u.s (this is locaion menu)
about|home|news (this is content menu)

if a web site user clicks on global, it will show global|home page, if the user clicks euro , it will show euro|home page, clicks on u.s it shows u.s|home page.

global|home , euro|home, u.s|home, all 3 have same format but different content.

for global|about, euro|about, u.s|about, if a user clicks on global , then clicks on about, it shows global|about page, clicks on euro, then clicks on about, it shows euro|about page, etc. page content is different , but format same.

all things (items, nodes) in this web site have a location taxonomy attached to it.

for example, for home page,we have to show a picture, the picture has location attached to it.

so , when a user click on euro|home, the picture should comes from euro location , for asia|home, the picture should comes from asia location.

My question is, in drupal 6, how to organize my menu, taxonomy, views, pages to achieve the result.

+1  A: 

A way to look at this problem would be to think of this as a multi lingual site. You have different languages:

  • global
  • asia
  • euro
  • u.s

Even if all the actual text is written in english, you can setup your site as though the languages are different. You can make different versions of english, so all the other text doesn't get translated to other languages. What's smart about this, is that you can translate your nodes, like the about page, and Drupal would show the one from your active language. This would be one way of fixing this, and clicking the different regions, would just change the language.

Another way to do this, would be to use taxonomy. Some of the things, like the menu system would be a bit more different to fix. There would be different solutions to solving your problem this way. In some ways, it would be more simple than making your site multi lingual. I think the easiest way would be to make a 4 different menus, one for each menu. Then you could make some logic in your template, that fx looked at the args, or looked at the taxonomy term you had associated to the node being displayed, and based on that, you would display the different menus. It would require much more coding, to get it to do what you want, and it's not exactly an ideal solution, but would make your site less complex.

Another way to solve this problem, could be using sub menus. So you made children to each region in your main menu. Then you could simply show the menu of the active one. This would probably be the easiest and most simple solution to your problem. Most of it, would be purely styling that would be needed to make it work like you wan to. There might be some issues making the right menu show all the time, but depending on how complex your site are, this shouldn't be a big deal.

These are 3 ways to solve your problem, each has it pros and cons, and the best is very much dependent on the nature of your site.

googletorp

related questions