Many people new to Drupal voice frustration about taxonomy. The goal here is not to explain the subject in exhaustive detail, but to give enough relevant information to get people started. An information architect will find these definitions imprecise, but for our purposes they will get the job done.
To begin, a glossary:
- taxonomy - a method of classifying information on the site.
- categories - different groups or subjects. Think general. Think of a bucket.
- vocabularies - synonym for categories.
- terms - subjects that exist in categories.
So, a taxonomy consists of different categories. Each category (or vocabulary) contains terms.
To create a new vocabulary, navigate to http://yoursite.com/?q=admin/taxonomy/add/vocabulary (or, administer -> categories -> add vocabulary)
For this tutorial, create a vocabulary named Course Calendar. When you are creating a vocabulary, you will have nine options. The first three -- Vocabulary Name, Description, and Help Text are fairly intuitive.
Looking at the remaining options:
- Types: This section allows you to define the content types that will post into this category. Both assignment and personal blog entry have been selected for type. This means that both of these content types can be tagged with terms from this vocabulary.
- Related Terms: leave this option unchecked. While this option is useful in some configurations, it adds a level of complexity that we do not require.
- Hierarchy: select single -- this allows you to leverage the organizational power of a controlled vocabulary without getting into the complexity of a multiple hierarchy.
- Multiple select: I generally leave this off because I want my students to select a single term from a vocabulary. When multiple select is enabled, users can post into more than one term. Allowing users to select multiple terms is very useful as the sophistication of your users/students increases; however, for younger students, the option can introduce an unnecessary level of complexity.
- Required: If this is checked, users must tag their post with one of the terms in the vocabulary. I like to check this because it guarantees that a user will post into a specific term. This simplifies keeping track of posts, and also serves to organize the posts more effectively.
- Weight: this simply organizes the categories; when categories are listed, the lower numbers are at the top of the list.
Once the vocabulary has been created, add terms into the vocabulary.
For this demo, I created a taxonomy structure that can be seen here. This taxonomy contains three vocabularies:
- Course Calendar -- for blogs and assignments
- Types of Post -- for blogs
- Important Info -- for pages
The vocabularies organize the information in two ways: the Course Calendar vocabulary creates a chronological structure, where Types of Post and Important Info group similar types of posts together. The one exception to the logic behind this taxonomy structure involves the Portfolio term, incongruously placed in the Course Calendar vocabulary. This logic is discussed later.
If you look at the content types allowed in the individual categories, you will see that terms from two categories -- Course Calendar and Types of Posts -- can be used to tag blog posts. This allows users to retrieve blog posts either through the course calendar (I want to see all the blogs from the first week of the class) or through the Types of Posts (I want to see the latest round of Reading Responses).
Only pages can post into Important Info. If you look back at how we set up access control, only teachers can create pages. This configuration allows for a specific section of the web site where only instructors can post. Organizing the site in this way provides a section where teachers can post important information, and where students know where to find important information.
To summarize:
Only instructors have the rights to create assignments. Assignments are tagged with a term from the Course Calendar vocabulary.
Instructors and students have the rights to blog. All blog posts must be tagged with a term from the Course Calendar vocabulary; this groups all posts into an approximate chronology, and groups blog posts with assignments. Additionally, however, blog posts can be tagged with a term from the Types of Post vocabulary; this vocabulary organizes posts by function.
Only instructors have the right to create pages. Practically, pages and blog posts do the same thing. However, by using taxonomy and role-based access control, we create a separate organizational section -- and a separate function -- for pages.


Comments
Confusion about taxonomy_dhtml
I have created several new taxonomy terms. I would like to have the taxonomies and terms appear in the right sidebar, but I'm not clear how they relate to menu and blocks.
Page in question
Two steps to configuring taxonomy_dhtml
Post new comment