You will see a lot of posts on the Drupal site about creating and using a Taxonomy (or "vocabulary" and "terms").

While it is true that the more content you have the more obvious the need for a taxonomy becomes, there is certainly no reason why a smaller website that has things to classify can't use it.

But to try to help you get a slightly better idea of how to use them, we'll use a case study here.

The Recipe module is probably a good example. On one site, in order to foster a bit more "community" feel and encourage visits, the administrator decided to add a group cookbook (a real one, not like this book). The recipe module does that.

It didn't take very long to realize that entering a bunch of recipes without any organization would get messy pretty quick. Well, recipes fall into several categories: Appetizers, Entrées, Desserts, etc. So let's set up those things as a "vocabulary" with which we can organize the recipes.

For Drupal 7 go to Admin / Structure / Taxonomy and create a vocabulary following the prompts. You must then go to each content type and add a taxonomy field for the vocabulary.

For some other version of Drupal, you can:

  1. Go to Administer>>Content management>>Categories and click on the "Add vocabulary" tab. [In Drupal 6, the menu path is Administer>>Content management>>Taxonomy]
  2. Enter the name, for example "Recipes." Then a "Description" like "Our community cookbook."
  3. Select the type of content this applies to. The Recipe module introduces a "recipe" type.
  4. Select a "single" hierarchy. Later on, if the number of contributions gets large, you can always add sub-categories (like "Beef," "Poultry," and "Pork") and change to a multiple level hierarchy.
  5. Select "Required" to force the users to choose a category for any recipe they enter.

That's it for the "vocabulary," so click on the "Submit" button. You'll go back to the Categories list. You should see your new vocabulary listed.

Towards the right, you'll see a link to "add terms." Click on it.

  1. Since this is a single level hierarchy, the "Parent" should say "<root>."
  2. In "Term name" enter your first term, such as "Appetizers."
  3. Enter a "Description" such as "Things for before the meal."
  4. Don't worry about the rest yet, just click the "Submit" button.
  5. Keep adding the rest of your terms ("Salads," "Soups," "Side dishes," etc.

Now when a user goes to Create content and selects "Recipe," they will be required to choose one of these categories for it. And if they go to the "Cookbook" menu item (which was created by the Recipes module) they'll see a list of categories that they can browse.

For another example, there is a web site for a group that has members submit articles for a monthly newsletter. They wanted a way to organize it so that they could go back and review it by date or topic. So the admin created two vocabularies, one for the issue date and one for the topic. Now they can, with one click, read all the book reports, movie reviews, or humorous articles. And, every month when they submit new articles, they automatically show up in those lists.

Another site has categorized collections of FAQs. The original site had three hard-coded HTML pages with different types of FAQs; no one wanted to touch them. The admin installed the FAQ module and set up the three terms in a single vocabulary. That allowed them to actually grow their FAQ library to now contain six categories, and it is trivial for them to maintain it.