Hi there,

I've developed a few sites with Wordpress and now for a more complicated site structure I'm trying to use Drupal, as I know it has a lot more potential for categorizing and presenting information.

If someone has the patience, I'd like to know the smart way to do this. And, yes, I have done some reading, but am still not confident. :)

I'm building a travel site thats broken down into cities, and wrote a page on each city.

Ex, page on Toronto, page on Montreal.
Then I created children pages, such as, hotels, skiing, restaurants.
Then on occasion, yet another child page for a specific hotel or restaurant.

So something like site.com/montreal/hotels/delta-hotel

QUESTIONS:
1. Is there a way to have the menu structured dynamically? Right now I've been adding them all manually.
2. Should I use taxonomy as well? What vocabulary and terms would you suggest?
3. How can I also add a menu list organized by topic: Hotels, Skiing, Restaurants, and then the reader will be presented with a list of cities that have any Skiing articles, and then the user selects the city and is presented with the Skiing in CityA page?

Sorry if these may be obvious to some of you, but for me it's been tough to know if I'm doing things right way. I want to get it right the first time, rather then re-organizing the site in a couple of months. :)

Thanks a lot,

Widecast

Comments

jscoble’s picture

You should use taxonomy to categorize your content. From your post Cities, Hotels, and Restaurants would be a good start for the categories.
Views should help you do the rest, or at least give you a good start on it.

widecast’s picture

So menus should be created dynamically if I use taxonomy? Is that what the module taxonomy_module can do?

cog.rusty’s picture

No, menus are not created automatically, except if you install a module which does that, such as http://drupal.org/project/taxonomy_menu or http://drupal.org/project/taxomenu

Taxonomy is the way to go if you want to organize the content into categories in any serious way. Menus are mostly a manual procedure. Taxonomy does 3 things:
- Defines terms (categories) which belong to vocabularies (different ways to see things). So, in your case I would suggest 2 flat vocabularies, one for cities (terms: London, Paris...) and one for resources (terms: hotels, skiing, restaurants...).
- Lets you tag nodes with categories. In your case, you would demand one category from each of the two vocabularies.
- Lists teasers of nodes tagged with categories or with combinations of categories. (Or you can do this part using the more versatile Views module.) Here, you will probably want to assign category listing URLs to menu items.

Additionally, you can use some module for easier combinations of categories, such as http://drupal.org/project/taxonomy_filter or http://drupal.org/project/refine_by_taxo

widecast’s picture

Does creating different content types help categorize later or does taxonomy do it all?

For example, should I create a content type for City General Overview, Specific Resource Info (When I write an article about hotels, restaurants in that city), Actual company review.

The hierarchy is City Overview > Hotels of that city > Hotel A review

Should they each have their own content type, or is that just for appearances? Or rather should each of these have their own taxonomy terms such as city overview, resources general, resource specific?

Thanks!

cog.rusty’s picture

Generally different content types can serve two purposes:

- Different node layout if needed, using the CCK module. For example a Hotel content type and a Restaurant node type could have some additional standard fields (and not only Title and Body), but different ones.
- Different behaviors/workflows, for example nodes of one content type could be promoted automatically to the front page and nodes of another one not.

Generally content type is a more permanent characteristic of a node which is hard to change, especially if they have different fields.

A couple of things relevant to content types and taxonomy:

- To add content without different content types, you would use an URL like "node/add/story" and then differentiate hotels from restaurants by tagging them as hotels or as restaurants. But with content types, you could have URLs like "node/add/hotel" and "node/add/restaurant" and tag them only with the city.
- Each vocabulary applies to one or more content type(s), which you specify when you define a vocabulary. So, selecting a city will be possible only for hotels and restaurants, and you can have other content types where the cities vocabulary does not apply and will not be available to the editor.

archard’s picture

I would use the Book module to create the parent-child node relationship you want. This will also create the dynamic menu structure you want, since the Book module automatically creates menus based on the parent-child relationship between the nodes (see the documentation section of this site). You can also use the pathauto module to create custom URL aliases that are based on the parent-child relationship of your Book structure.

Then I would definitely use the taxonomy module to further categorize your content. It's not clear to me exactly how you want your content categorized, but the taxonomy module can do a lot of amazing things. I'm also a former WordPress user and I was shocked at how much better Drupal's categorization system was. Play around with it a lot, I think you'll find some great uses for it.