Drupal Training Series

87
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 United States License Drupal Training Series Foundations for OSU Drupal 6: 201: Developing Site Structures

description

Drupal Training Series. Foundations for OSU Drupal 6: 201: Developing Site Structures. What We ’ ll Be Covering…. Getting Started About the Assignment About the Project Understanding Systems Overview Books Overview Ex. 01 Enable Book Navigation Block Ex. 02 Start a Book - PowerPoint PPT Presentation

Transcript of Drupal Training Series

Page 1: Drupal Training Series

This work is licensed under a Creative Commons Attribution-

NonCommercial-ShareAlike 3.0 United States License

Drupal Training Series

Foundations for OSU Drupal 6:201: Developing Site Structures

Page 2: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 2

What We’ll Be Covering…Getting Started

• About the Assignment• About the Project

Understanding Systems• Overview

Books• Overview• Ex. 01 Enable Book Navigation Block• Ex. 02 Start a Book• Ex. 03 Outline a Book• Ex. 04 Create Methods Section

Taxonomy• Overview• Ex. 05 Taxonomy Drill-Down• Ex. 06 Create the Meal Vocabulary• Ex. 07 Create the Course Vocabulary• Ex. 08 Create Cooking Method Vocabulary• Ex.09 Taxonomy Imports• Ex. 10 Tagging Time

Glossary• Overview• Ex. 11 Configure Glossary

Summary

Page 3: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 3

For Self-Study Users

To complete this workshop you will need a personal training site.

To acquire a personal training site, please go to http://oregonstate.edu/cws/contact, submit a CWS Help Ticket, and one in the body area of the help ticket submission form.

Please also provide your ONID username (not your password, just your username) when you submit your request.

All sites in the drupaldev domain, including both personal training sites and development sites, are limited to on-campus access. To connect to your training site from off campus you must use the VPN service supplied by Network Services. Please go to http://oregonstate.edu/helpdocs/vpn-campus-access for more information.

Page 4: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 4

Getting Started

As a reminder, to get to your personal development site go to:

http://drupaldev.cws.oregonstate.edu/training/<yourONIDname>/login

From there, log in with your ONID information.

After logging in, please open a second tab in your browser and go to CWS Training at

http://oregonstate.edu/cws/training

Click on the Training Materials image in the right sidebar, then locate the name of this workshop in the list and click it. This will take you to a page describing the course with download links at the bottom of the page.

Download the lab materials to your desktop and unzip them.

Page 5: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 5

Assignment

Participants should have one piece of content built prior to beginning this workshop

This piece of content will serve as the Home page for our website project

The Home page should be listed within the Primary links menu, which should display on the top horizontal menu bar on your screen

Page 6: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 6

The Project

The project we’ll be working on, from this point onward, is a website centered around food.

This website, titled Food for Thought, has two goals:

• Provide a wide collection of searchable recipes

• Provide advice on how to use different methods and common utensils

The audience consists of:• Ages 13+• Male & Female• English speakers

Page 7: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 7

Understanding Systems: Overview

Websites can grow to be complex• Many different forms of media.

• Many internal parts / pages.

• External relationships may exist as well.

Often these parts depend on each other to achieve some desired function or effect.

When there is a dependency between two or more objects or elements, and one or more of those elements changes, it may affect the other parts as well.

This is why a good understanding of systems and how they work is very helpful.

Page 8: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 8

Understanding Systems: What is a System?

System: a regularly interacting or interdependent group of items forming a unified whole (http://www.merriam-webster.com/dictionary/system)

Just about everything is a system of something.

Think about it…

FamiliesSystems of People

Our BodiesMultiple Biological Systems

Even AtomsSystem of Protons, Neutrons & Electrons

Page 9: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 9

Understanding Systems: A Website is a System

A website is an information system which consists of several different systems working together to make it all happen

• Back-end– The hardware required to store and distribute electronic files.

Web Servers Database Servers

– The programming required for hardware to communicate and perform particular tasks.

HTML PHP

• Front-end– The User Interface (UI) we see on our computer monitors .

This is how we “communicate” with the equipment. Most importantly, this is how we communicate with our audience.

As OSU Drupal 6 site builders, we will be both interacting with, and building, a large part of the front-end

Page 10: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 10

Understanding Systems: System Development

There are two main systems we’ll be working with in this workshop:

• Navigation System

– Creating well-formed, logical menus.

• Classification System

– Creating a solid base for tagging and organizing site content.

Solid development of both of these systems provides:

• Higher degree of usability

• System optimization

Often, the development of one of these systems will lend itself nicely to the development of the other

Page 11: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 11

Food for Thought

HomePage

EquipmentCCK

MethodsBook

CookingCompanion

Book

ConversionsBook

RecipesCCK

Title

Content Type

Relationship

Understanding Systems: System Development – Tools & Methods – Site Map

To get started, it’s a good idea to have at least a rough idea of how the website should be formed

A site map is a good, graphic tool, for fitting everything together

This site map should include, at a minimum:

• Title / Content

– Should be meaningful, concise, and somewhat define purpose.

• Content Type

• How Content Relates

At left is a very basic frame on which we’ll build our Food for Thought website on

CookingMethods

Book

HandlingMethods

Book

FFT PeopleCCK

Page 12: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 12

Understanding Systems: System Development – Tools & Methods – Narrative

The site map, shown previously, is a good general guide to the structural components of our site

Additionally, we should have some idea of the intended function that each of the major components serves – a narrative will serve this purpose nicely

Food For ThoughtHome Page

Function: an overview page which describes the website as a whole

Cooking CompanionFeature

Function: similar to an Appendix or Bonus section of a traditional cookbook

RecipesFeature

Function: a searchable and sortable collection of recipes

MethodsSection

Function: a categorized collection of techniques and tips for the cooking, handling, and preservation of food

EquipmentSection

Function: a searchable and sortable collection of tips regarding the use of common food preparation and serving equipment

ConversionsSection

Function:a simple standard to metric conversion chart for common cooking measurements

FFT People Feature

Highlights the employees of Food for Thought by providing photos, brief biographies, and contact information.

Page 13: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 13

Books: Overview

All default access roles in OSU Drupal 6 have the ability to greatly affect what is displayed on a site.

The system most at risk in a multi-user OSU Drupal 6 site is the navigation system. Ironically, this system is, by and large, the most important tool provided to the audience.

It deserves some careful planning, communication, and maintenance.

There are some tools available to help optimize the navigation system of a Drupal site – the most obvious one is the Books feature.

When used in conjunction with a well-communicated workflow plan, this tool will help both organize and partially automate the menu development on a Drupal site.

Page 14: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 14

Books: Ex. 01 Enable Book Navigation Block

We’re going to be working with some Book navigation menu items in this workshopTo view this menu block, we’ll have to enable it first by doing the following:

• In the Admin menu go to Site building > Blocks.

• Scroll down to the Disabled group and locate the Book navigation block.

• Select the Right sidebar option from the drop-down menu.

• Click the Save blocks button.

Note: to learn more about blocks, check out the Drupal 6 Engineering Blocks workshop.

4

3

2

Page 15: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 15

Books: Ex. 01 Enable Book Navigation Block – Missing Block

Click on your Home page link to view the set up.

Note that the Book navigation block doesn’t show, even though your Blocks page says the block is enabled.

This is simply due to the fact that we don’t have any Book pages created yet.

Page 16: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 16

Books: Revisiting Books

The Book page content type was introduced, initially, in the Drupal 6 Content Types Workshop.

As a refresher, this content type has some great features in terms of developing the structure of a site:

• Relates appropriate content together with Parent / Child pages.

• Provides a degree of automation to menu development.

Remember, the Book page content type is intended for hierarchical content.

Think of it in the same fashion as you would a traditional book – with a main topic and supporting chapters

Page 17: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 17

Food for Thought

HomePage

FFT PeopleCCK

Books: Using the Site Map

The site map provided at the beginning of this workshop displays a small step towards outlining a Drupal Book.

The Cooking Companion section of this site will be the focus for our Book building efforts.

As shown at left in the site map, the Equipment category within our Cooking Companion book will consist of its own custom content type. This will be addressed in a future workshop.

MethodsBook

CookingCompanion

Book

ConversionsBook

CookingMethods

Book

HandlingMethods

Book

RecipesCCK

EquipmentCCK

Page 18: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 18

Books: Ex. 02 Start a Book

Let’s start by creating the Parent Book page, titled Cooking Companion:

1. In the Admin menu, click on Content management > Create Content > Book page.

1

CookingMethods

Book

HandlingMethods

Book

MethodsBook

ConversionsBook

CookingCompanion

Book

Page 19: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 19

Books: Ex. 02 Start a Book – Cooking Companion Parent Page

Create the Parent Book page:1. Title field = Cooking Companion2. Body field = paste lab materials in

– Section Ex. 02a– ex-02a.png– Input format = Full HTML

3. Book outline field= <create a new book>

2

34

1

Page 20: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 20

Books: Ex. 02 Start a Book – Cooking Companion Parent Page – Preview & Save

Save your Cooking Companion parent page.

After saving, note the appearance of the Book navigation menu.

Page 21: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 21

Books: Ex. 02 Start a Book – Add Conversions Child Page

According to the our Site Map, the Conversions Child Book page has nothing stemming from it, so let’s quickly create this node as well:

1. Scroll to the bottom of the Cooking Companion Parent page and click on the Add child page link.

HandlingMethods

Book

CookingMethods

Book

MethodsBook

CookingCompanion

Book

ConversionsBook

1

Page 22: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 22

Books: Ex. 02 Start a Book – Enter Conversions Child Page Data

To create the Child Book page:

1. Title = Conversions2. Body = paste lab materials in

1. Open and copy the ex-02b.txt file.2. Click the HTML Source Editor button in the

WYSIWYG editor.3. Paste the content into the HTML Source Editor

dialog box.4. Click the Update button.

3. Input format = Full HTML

2

3

1

Page 23: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 23

Books: Ex. 02 Start a Book – Add Conversions Child Page – Preview & Save

Preview the Conversions page.

If satisfied with the results, click the Save button.

Page 24: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 24

Books: Outline a Book

Outlining a written piece of work simply means to take a broad topic and break it down into smaller pieces that support the main topic

A great example of an outline is to look at the Table of Contents of any textbook. Generally each chapter contains a descriptive title and probably contains several points of interest. Larger works may be split into Parts.

The site map is a start at outlining, but it really just points us in the general direction.

We’re left with the Methods group and its children: Cooking and Handling & Preservation.

Let’s outline the Methods group.Methods

Book

CookingMethods

Book

HandlingMethods

Book

CookingCompanion

Book

ConversionsBook

Page 25: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 25

Books: Ex. 03 Outline a Book

According to our summary, the content that will exist in the Methods group will be “a categorized collection of techniques and tips for the cooking, handling, and preservation of food”

How could these sub-groups be further outlined?

What are some different Cooking Methods?

What about Handling? Preservation?

MethodsBook

CookingBook

Handling &Preservation

Book

HandlingBook

PreservationBook

Page 26: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 26

MethodsBook

CookingBook

Handling &Preservation

Book

HandlingBook

PreservationBook

B-B-Q & AChild Book Page

Baker’s DozenChild Book Page

Get the SkinnyChild Book Page

Joe’s DinerChild Book Page

Meat PrepChild Book Page

Fruit & Veg PrepChild Book Page

Food SafetyChild Book Page

CanningChild Book Page

DehydratingChild Book Page

PicklingChild Book Page

Books: Ex. 03 Outline a Book – Finalized Book Outline

Our site map is starting to show some signs of advanced structure.

Now it’s time to set it all up.

We won’t be creating full pages for everything – instead, we’ll include content in the top three pages and then just get the others started.

Page 27: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 27

Books: Ex. 04 Create Methods Section

Start by creating the Methods page:

• From the Cooking Companion Parent node, click on the Add child page link.

• Title = Methods• Body = use lab materials:

1.Section Ex. 04a2.File ex-04a.png

1. Input format = Full HTML2. Preview and Save

The results should appear similar to the example shown.

Page 28: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 28

Books: Ex. 04 Create Methods Section – Methods Child Pages – Now You Do It

Now it’s time to quickly build the Cooking and Handling & Preservation sections, which are both children of Methods.

Parent = Methods

Title field = Cooking

Body field = use lab materials: • Section Ex. 04b

Input format option = Full HTML

Preview and Save

Parent = Methods

Title field = Handling & Preservation

Body field = use lab materials: • Section Ex. 04c

Input format option = Full HTML

Preview and Save

Page 29: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 29

Books: Ex. 04 Create Methods Section – Cooking Child Pages – Now You Do It

Create the child pages of Cooking

Parent = Cooking

Title field = Baker’s Dozen

Body field = use lab materials: • Section Ex. 04d

Input format option = Full HTML

Preview and Save

Parent = Cooking

Title field = Get the Skinny

Body field = use lab materials: • Section Ex. 04d

Input format option = Full HTML

Preview and Save

Parent = Cooking

Title field = Joe’s Diner

Body field = use lab materials: • Section Ex. 04d

Input format field = Full HTML

Preview and Save

Parent = Cooking

Title field = B-B-Q & A

Body field = use lab materials: • Section Ex. 04d

Input format option = Full HTML

Preview and Save

Page 30: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 30

Books: Ex. 04 Create Methods Section – Handling & Preservation Child Pages – Now You Do It

Using Section Ex. 04-05, create the child pages of Food Handling & Preservation. These pages have no content in the body yet. They will be used as placeholders.

Parent = Handling & Preservation

Title field= Food Handling

Body field = none

Input format option = Full HTML

Save

Parent = Handling & Preservation

Title field = Food Preservation

Body field = none

Input format option = Full HTML

Save

Parent =

Food Handling

Title field =

Meat Preparation

Body field =

none

Input format option =

Full HTML

Save

Parent =

Food Handling

Title field =

Fruit & Vegetable Preparation

Body field =

none

Input format option=

Full HTML

Save

Parent =

Food Handling

Title field=

Food Safety

Body field =

none

Input format option =

Full HTML

Save

Parent =

Food Preservation

Title field =

Canning

Body field =

none

Input format option =

Full HTML

Save

Parent =

Food Preservation

Title field =

Dehydrating

Body field =

none

Input format option =

Full HTML

Save

Parent =

Food Preservation

Title field =

Pickling

Body field =

none

Input format option =

Full HTML

Save

Page 31: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 31

Books: Final Book Development

Clicking through the parent categories in the Book navigation menu will open each group of menu items.

There are many pages that have been created as “holder” pages. As site builders, we know what is desired for each holder page, we just haven’t generated the content for it yet.

Page 32: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 32

Books: Final Book Development – Book Navigation Display

Note the depth of the Book navigation menu as you click down through groups.

The menu is indented and shaded to display the different levels, but you will notice that by the 5th level, it becomes a little difficult to differentiate. It is suggested that you not outline deeper than five levels for clarity’s sake.

3rd Level Down 4th Level Down 5th Level Down

Page 33: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 33

Books: Book Manager

Remember, you can also get a view of the overall structure of your book by going to Admin menu > Content management > Books > Edit Order and Titles.

Here you can drag and drop your titles to order them as you wish. Your changes will be reflected automatically throughout the system.

Page 34: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 34

Taxonomy: Overview

It’s a somewhat daunting term, but most of us tend to understand taxonomies innately. When given a varied group of things, most people sort things out based on some type of categorical attribute.

A taxonomy is merely a way of categorizing things.

If a person happens to have a music collection and enjoys more than one artist or type of music, chances are, they’ve created their own musical “taxonomy” based on music genre.

My Music• Classical

– Boston Philharmonic Beethoven’s 5th

• Country– Johnny Cash

Ring of Fire

• Jazz– Norah Jones

Come Away With Me

• Rock– Red Hot Chili Peppers

Around the World

The outline at right may look somewhat familiar in form.

While there may be many different taxonomy topics, there is really only one purpose behind creating one…it organizes items.

This, in turn, makes things easier to find.

Page 35: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 35

Taxonomy: Why Bother With a Taxonomy?

Taxonomies do not need to be built for a Drupal site to work. For small sites, most site-builders may choose not to use this feature.

For large sites though – sites that contain much more content than menu space – taxonomies can help in the following ways:

• Categorical assignment

– Helps with queries and Views.

• Controlled keywords / tagging

– Helps with content optimization.

• Glossary creation

– At least one taxonomy vocabulary must be built for this feature to work.

Page 36: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 36

Taxonomy: The Shoebox

Now, imagine that someone has dumped a shoebox full of recipe cards in front of you.

Your job is to sort through it and put it into order

In how many different ways can these items be sorted?

What makes sense to you?

Even more importantly, what do you think makes sense to someone else who is looking for something in particular?

Page 37: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 37

Taxonomy: Ex. 05 Taxonomy Drill-Down

Before building the actual taxonomy on Drupal, it’s a good idea to come in prepared by drilling down the category first.To drill-down a category:First, establish a Topic for the categoryThe topic category should be:

• Broad• Directly related to the main topic

We’ll start by using the Recipes category of our website.

Recipes Category topic

Page 38: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 38

Taxonomy: Ex. 05 Taxonomy Drill-Down – Parent Terms

We’ve established Recipes as our topic.

Let’s get a little more specific with our Recipes group by adding our first level terms, these will be known as the Parent terms.

Recipes

AlphabeticFood

Group

MealCuisine

NutritionValue

Course

Page 39: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 39

Taxonomy: Ex. 05 Taxonomy Drill-Down – First Level Children

Now, add a first level of children.

The diagram is starting to look a little more detailed by now.

Recipes

Alphabetic

FoodGroup

Meal

Cuisine

NutritionValue

Course

Junk

Vegan

LowCarb

Breakfast Lunch

DinnerSnack

Italian

Chinese Mexican

Entree

Appetizer

Soup

Meat

Grain

Veg

Fruit

Dairy

Page 40: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 40

Taxonomy: Ex. 05 Taxonomy Drill-Down – Second Level Children

Can a second level of children be added?

Yes.

In fact, this diagram can be drilled down quite a bit further.

Part of building a good taxonomy, though, is also knowing when to stop.

This is a matter of judgment and having a focused concept of what is desired as an end result.

Recipes

Alphabetic

FoodGroup

Meal

Cuisine

NutritionValue

Course

Junk

Vegan

LowCarb

Breakfast Lunch

DinnerSnack

Italian

Chinese Mexican

Entree

Appetizer

Soup

Fruit

Grain

Veg

Meat

Dairy

CheeseMilk

Bread

Pasta

Beef

Pork

Poultry

Seafood

Apple

Tomato

Page 41: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 41

Taxonomy: Ex. 05 Taxonomy Drill-Down – Cleaning Up Drill-Down

Sometimes a drill-down exercise can produce many possibilities.

Some, of course, will always be better than others.

It’s the job of the site-builder to determine what will work best and weed out what might be unnecessary.

In this case the following will go:• Alphabetic

– Not specific enough

• Nutrition Value– Potentially high-maintenance

Alphabetic

NutritionValue

Junk

Vegan

LowCarb

Recipes

FoodGroup

Meal

Cuisine

Course

Breakfast Lunch

DinnerSnack

Italian

Chinese Mexican

Entree

Appetizer

Soup

Fruit

Grain

Veg

Meat

Dairy

CheeseMilk

Bread

Pasta

Beef

Pork

Poultry

Seafood

Apple

Tomato

Page 42: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 42

Taxonomy: Ex. 05 Taxonomy Drill-Down – Finalized Recipe Drill-Down

What remains are four very solid sub-groups of the Recipes group for the Food for Thought website.The Meal and Course sub-groups are quite small.The Cuisine sub-group will be a bit larger.The Food Group sub-group will be the most complex of all.

Recipes

FoodGroup

MealCuisine

Course

Breakfast Lunch

DinnerSnackItalian

Chinese Mexican

Entree

Appetizer

Soup

Fruit

Grain

Veg

Meat

Dairy

CheeseMilk

Bread

Pasta

Beef

Pork

Poultry

Seafood

Apple

Tomato

Page 43: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 43

Taxonomy: Taxonomy Terminology

Before we begin, it would be beneficial to go over the terminology used within a site’s Taxonomy:

Taxonomy: The Drupal module that allows a user to categorize content using both tags and defined terms – also the collection of vocabularies used in a Drupal site.

Vocabulary: A collection of terms used within a particular category – several different vocabularies might exist in one site’s taxonomy.

Term: A word or phrase and its definition.

Tag: A word or phrase that is connected to a piece of content and serves as a tool to facilitate content filtering.

Page 44: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 44

Taxonomy: Tagging

The first few Vocabularies that we’ll construct are intended to be used as tagging tools for a custom Recipe content type that we’ll build in the future.Tagging as mentioned previously, is used to help optimize site content.

RecipeLasagna

FoodGroup

Meal

Cuisine

Course

Lunch

Dinner

Italian

Entree

Grain

Veg

Meat

Dairy

Cheese

PastaBeef

Tomato Consider this…

One person might enter this website looking for Italian food.

Another person may desire dishes with tomatoes in it.

Still another may be looking for pasta recipes.

In all cases, Lasagna, should be on any result list – if it’s tagged right.

This is part of content optimization.

Page 45: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 45

Taxonomy: Ex. 06 Create the Meal Vocabulary – Vocabulary Information

To create the Meal vocabulary, go to Administration menu > Content management > Taxonomy > Add vocabulary and add the following information:

1. In the Vocabulary name field enter Meal.2. In the Machine name field, enter meal.3. In the Description field, enter a brief

description of the vocabulary, if desired.4. In the Help text field type To select

multiple terms hold the Ctrl key while clicking.

5. Leave the Content types group as is for now.

6. In the Settings group, click on the Multiple select option.

7. Click the Save button.

Leave as is

1

6

2

3

4

5

7

Page 46: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 46

Taxonomy: Ex. 06 Create the Meal Vocabulary – Add Terms

After the vocabulary is created, the user is redirected back to the Taxonomy main screen – now it’s time to add some terms:

• Click on the add terms link in the Meal row.

• In the Term name field enter the word Breakfast.

• Click the Save button.

Repeat this process for the following terms:

1. Lunch2. Dinner3. Snack

1

2

3

Page 47: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 47

To organize the new terms:

1. From the Add term tab, click on the List tab.2. Click and hold on the small cross icon next to the

Lunch term and drag it up between the Breakfast and Dinner terms.

3. Click the Save button.4. Upon saving you will see a message telling you

the filter cache has been cleared. This is normal.

Taxonomy: Ex. 06 Create the Meal Vocabulary – Organize Vocabulary Terms

1

2

3

4

Page 48: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 48

Taxonomy: Advanced Taxonomy Options

So far, we’ve just listed a few terms in a very simple vocabulary.

Taxonomy can provide some additional features, though, such as:

• Definitions / descriptions

• Parent – Child relationships

• Term relations

– This produces an effect similar to “see also” in a dictionary

• Synonym recognition

– If a particular word has a synonymous word or term, it can be listed here. Ex: Dinner might also be referred to as Supper

These different options can be used in a variety of ways by Drupal, as well as by other modules that are included in the OSU Drupal 6 installation.

Page 49: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 49

Taxonomy: Ex. 07 Create the Course Vocabulary

Let’s explore some of these advanced options with the Course vocabulary:

1. Click on Administration menu > Content management > Taxonomy > Add vocabulary.

2. In the Vocabulary name field enter Course.3. In the Machine name field enter course4. In the Description field, enter a brief

description of the vocabulary, if desired.5. Leave the Content types group as is for now.6. Click the Save button.

Leave as is

1

5

2

4

3

5

Page 50: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 50

Taxonomy: Ex. 07 Create the Course Vocabulary – Create a Synonym

Once the Course vocabulary is started:

1. Click on add terms in the Course row.

2. In the Term name field enter the term Appetizer.

3. Click on the Advanced options group to open it.

4. In the Synonyms field enter the word hors d’oeuvre.

5. Click the Save button.

1

5

2

3

4

Page 51: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 51

Taxonomy: Ex. 07 Create the Course Vocabulary – Now You Do It

Now it’s time to roll up your sleeves…

Go to the Ex 07 section of your lab doc. Complete the rest of the Course vocabulary by following the items listed on the document.

Page 52: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 52

Taxonomy: Terms

In addition to tagging, the Taxonomy module can also provide term definitions.

When used in combination with the Glossary module, a real-time, context-sensitive glossary is generated.

This is great for sites that use a large quantity of acronyms or special terminology.

For our next exercise, we’ll work on vocabularies for the Methods branch of our site map which we’ll then use to populate a Glossary.

You will need to progress to section Ex 08 in your lab document.

Page 53: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 53

Taxonomy: Ex. 08 Create the Cooking Method Vocabulary

To create defined terms:

• Click on Administration menu > Content management > Taxonomy > Add vocabulary.

• In the Vocabulary name field, enter the name Cooking Methods.

• In the Machine name field, enter the name cooking_methods.

• In the Description field enter Various cooking methods.

• In the Help text field enter To select multiple items, hold the Ctrl key while clicking.

• In the Content types group, select the Book page checkbox.

• In the Settings group, select the Multiple select checkbox.

• Click the Save button.

1

7

4

6

2

8

5

3

Page 54: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 54

Taxonomy: Ex. 08 Create the Cooking Method Vocabulary – Add Terms

Now, lets add some terms and definitions:

1. From the Taxonomy main page, in the Cooking Methods group, click on the add terms link.

2. Going off the section Ex. 08a example, enter the Term name Dry Heat Cooking.

3. Copy the definition from the Word document and paste it directly into the Description field.

4. In the Advanced options add the synonym convection cooking.

5. Click the Save button.

1

2

3

4

5

Page 55: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 55

Taxonomy: Ex. 08 Create the Cooking Method Vocabulary – Add Child Term

After the Parent term is created and the screen refreshes, to add a Child term:

1. In the Term name field, enter the term Bake.

2. Copy and paste the corresponding definition from the section Ex. 08a into the Description field.

3. Click on the Advanced options group to open it and, from the Parents list, select the Dry Heat Cooking option.

4. Add the synonyms baking and baked to the Synonyms field – one per line.

5. Click the Save button.

1

2

3

4

Page 56: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 56

Taxonomy: Ex. 08 Create the Cooking Method Vocabulary – Now You Do It

For the next few minutes, following the example provided in section Ex. 08, continue adding terms from the Cooking Methods vocabulary.

Try to get at least the first parent and its children completed.

Page 57: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 57

Taxonomy: Import/Export Taxonomy CSV Overview

As you may have noticed, taxonomy vocabularies can grow quite large and complex in a very short amount of time.

What if you were the administrator of two or more different sites that needed the same set of vocabulary terms? Would it make sense to have to retype them over and over again? It would certainly prove to be a hassle.

Fortunately, OSU Drupal 6 makes use of the Import/Export Taxonomy CSV module, a contributed taxonomy-related module that allows a user the ability to both export and import taxonomies of all structure types.

Let’s take a look at some of the things we can do with this module…

Page 58: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 58

Taxonomy: Ex. 09 Import Vocabularies – Flat Vocabulary

Let’s begin by importing a small, flat vocabulary with no definitions:

• Go to Admin menu > Content management > Taxonomy > CSV import.

• In the What do you want to import fieldset choose Terms (flat vocabulary) from the drop down menu and ensure the Keep order of terms checkbox is checked.

• In the Where are items to import fieldset, choose In a local file from the drop down menu and browse to the …/taxonomy-imports/cuisine.csv file in your lab materials.

1

2

3

Page 59: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 59

Taxonomy: Ex. 09 Import Vocabularies – Flat Vocabulary

Moving down the form:

1.In the How is your source formatted fieldset, in the CSV value delimiter drop down select (Comma) and in the CSV value enclosure drop down select (Quotation mark).2.In the Which vocabulary to import into fieldset, leave both Autocreate a new vocabulary and Automatically check vocabulary hierarchy as is. 3.In the When a term exists fieldset leave the Update existing term option as is.4.Click the Import button.

1

2

3

4

Page 60: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 60

Taxonomy: Ex. 09 Import Vocabularies – Flat Vocabulary – Edit Cuisine Vocabulary

After a vocabulary has been imported, it can be edited as needed. In this case, we’ll change the vocabulary name so it begins with a capital letter:

1. Click on the List tab.2. Locate the cuisine row and click on its

edit vocabulary link.3. Once in the vocabulary editor, change

the Vocabulary name to Cuisine, with a capital C.

4. Click the Save button at the bottom of the screen.

1

2

3

Completed

Page 61: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 61

Taxonomy: Ex. 09 Import Vocabularies – Flat Vocabulary – Completed

To view a list of your Cuisine vocabulary terms, click on the List tab and the list terms link in the Cuisine row.

Page 62: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 62

1

2

Taxonomy: Ex. 09 Import Vocabularies – Hierarchical Vocabulary – Import

Now, let’s add another layer of complexity by importing a hierarchical vocabulary:

1. Click the CSV import tab.Note that it keeps your previous settings…we only need to change a couple of things

2. In the What do you want to import fieldset choose Hierarchical tree structure from the drop down menu and leave the Keep order of terms checked.

3. In the Where are items to import fieldset, leave In a local file selected and browse to the …/taxonomy-imports/food-groups.csv file in your lab materials.

4. In the When a term exists what to do with it? fieldset, check Update (replace) existing term.

5. Leave all other settings as is and click the Import button.

34

Page 63: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 63

Taxonomy: Ex. 09 Import Vocabularies – Hierarchical Vocabulary – Edit

Now, let’s clean up the name of our new vocabulary:

1. Click on the List tab.2. Locate the food-groups row and click on

its edit vocabulary link.3. Once in the vocabulary editor, change

the Vocabulary name to Food Groups.4. Click the Save button at the bottom of

the screen.

1

2

3

Completed

Page 64: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 64

Taxonomy: Ex. 09 Import Vocabularies – Hierarchical Vocabulary – Completed

To view a list of your Food Group vocabulary terms, click on the List tab and the list terms link in the Food Group row.You’ll notice that this is a very large, hierarchical vocabulary that would take a great deal of time to enter by hand.

Page 65: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 65

Taxonomy: Ex. 09 Import Vocabularies – Update Vocabulary

Chances are you didn’t get an opportunity to finish all of your Cooking Methods terms – there are quite a few of them – with Taxonomy CSV, you can actually merge and update vocabularies:

1. Click the CSV import tab.Note that it keeps your previous settings…we only need to change a couple of things

2. In the What do you want to import fieldset choose Full Term Definition and Links from the drop down menu and leave the Keep order of terms checked.

3. In the Where are items to import fieldset, leave In a local file selected and browse to the …/taxonomy-imports/cooking-methods.csv file in your lab materials.

1

2

3

Page 66: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 66

Taxonomy: Ex. 09 Import Vocabularies – Update Vocabulary

Continuing down:

1.In the How is your source formatted fieldset, leave all the settings as is.2.In the Which vocabulary to import into fieldset, select Import in an existing vocabulary from the drop down. When the Vocabulary Choice drop down appears, select Cooking Methods from it.3.In the When a term exists fieldset the Update existing term option will be the only option.4.Click the Import button.

1

2

3

4

Page 67: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 67

Taxonomy: Ex. 09 Import Vocabularies – Update Vocabulary – Completed

Since we’re updating a vocabulary versus creating a new one, we don’t need to edit anything.To view a list of your updated Cooking Methods vocabulary terms, click on the List tab and the list terms link in the Cooking Methods row.

Page 68: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 68

Taxonomy: Ex. 09 Import Vocabularies – Now You Do It

Now it’s time to pull in several different vocabularies. All of the following are the same structure, so, after the first import, the only thing you will need to change is the file to be uploaded.

What do you want to import? • Full term definition and links• Keep order of terms checkbox = checked

Where are items to import? • In a local file• CSV file upload = equipment.csv, food-

preservation.csv, preparation-methods.csv

How is your source formatted? • CSV value delimiter drop-down = Comma• CSV value enclosure drop-down = Quotation mark• Check lines checkbox = checked• Check UTF-8 Format checkbox = checked

Which vocabulary to you want to import into?

• Autocreate a new vocabulary• Auto check vocabulary hierarchy checkbox =

checked

When a term exists, what to do with it? • Update (merge) radio button = checked

After all imports are completed, click the List tab and edit each vocabulary to add the correct name.

Additionally, for the Preservation and Preparation Methods vocabularies, associate them with the Book Page content type.

Page 69: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 69

Taxonomy: Ex. 09 Import Vocabularies – Now You Do It -- Completed

Your final list of vocabularies should look similar to below:

Page 70: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 70

Taxonomy: Ex. 10 Tagging Time

It’s time to start putting Vocabularies to workFrom the Book navigation menu, go to Cooking Companion > Methods > Cooking > B-B-Q & A and open the page in Edit mode.Note that there are some new features here that weren’t present before:

1. Vocabularies = select following:– From Cooking Methods:

Dry Heat Cooking Grill

• Click the Save button.

12

Page 71: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 71

Taxonomy: Tagging Lab – Now You Do It

Tag the other child pages of Cooking

Title = Baker’s Dozen

Vocabularies = select:• Cooking Methods

– Dry Heat Cooking– Bake

Preview and Save

Title = Get the Skinny

Vocabularies = select:• Cooking Methods

– Dry Heat Cooking– Bake– Grill– Water-Based Cooking– Blanch– Poach

Preview and Save

Title = Joe’s Diner

Vocabularies = select:• Cooking Methods

– Dry Heat Cooking– Grill– Oil-Based Cooking– Deep Fry– Roast

Preview and Save

Page 72: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 72

Taxonomy: Ex. 10 Tagging Time – Result

Out of the box, taxonomy tags do some interesting things…

When you hover with your mouse, if a description is included with the term, it will display the description as a definition.

When you click on the term, it brings up a list of all the other content that is also tagged with that term – this is called related content.

Page 73: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 73

Glossary: Overview

Now it’s time to get a hint of what Taxonomy can do by creating a Glossary.

The Glossary module is a contributed module that provides context sensitive links. When a user hovers a mouse over the link, the glossary term is displayed in a pop up tool tip. This is a great feature for a site that uses many acronyms or technical terms that need to continually be explained.

Just as a note, before we get started, Glossary is not difficult to set up, but it’s not very intuitive in terms of finding it.

Additionally, Glossary requires the ability to configure Input formats. Due to this, the only default roles that can configure the Glossary are the Advanced Author and Administrator.

Page 74: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 74

Glossary: Ex. 11 Configure Glossary – General Tab Settings

To configure Glossary:

• Click on Administration menu > Site configuration > Glossary settings.

• Check the Show glossary across many smaller pages option, under the Glossary Page group.

• Check the Show glossary term descriptions on the Glossary page option, under the Glossary Page group.

1

2

3

Page 75: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 75

Glossary: Ex. 11 Configure Glossary – Alphabet Tab Settings

The Glossary Alphabet tab is where the glossary is organized:

• The Alphabet and Digits fields are fairly self-explanatory.

• If the Suppress unused letters option is checked, unused letters will not show in the glossary page’s alphabet bar.

• The Alphabar separator is the symbol used to separate the alphabet characters at the top of the page – select one, if desired.

• The Alphabar instruction field can be customized, if desired.

• Click the Save configuration button when finished.

1

2

3

4

5

Page 76: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 76

Glossary: Ex. 11 Configure Glossary – Clear Cache Tab

A memory cache is used to speed up computer processing by temporarily placing data (or a copy of it) in a location where it can be accessed more rapidly than normal. This can drastically speed up page loading time.

Sometimes cached data may not immediately reflect changes that have been made to a system and the cache must be cleared and rebuilt.

Here is where cache clearing is done for Glossary.

Page 77: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 77

Glossary: Ex. 11 Configure Glossary – Input Format Tabs: Filtered HTML, Full HTML, PHP

The Glossary module must be enabled for each Input format prior to configuring it for the respective format.The process to enable each Input format is the same.We’ll start with the Filtered HTML format.

1. Click on the Filtered HTML tab.

1

Page 78: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 78

Glossary: Ex. 11 Configure Glossary – Filtered HTML Tab – Enable Glossary Filter

To enable the Glossary filter, from the Filtered HTML tab screen:

• Click on the Change the settings link.• This will take you to the Filtered HTML

Input format configuration page.• Scroll down the page and click the

Glossary filter option.• Click the Save configuration button.

After saving, you will be redirected to the Input formats screen – this is normal

Repeat this exact same process for Full HTML and PHP.

To enter the configuration panel for each, click on their respective configure links.

1

2

3

4

Page 79: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 79

Glossary: Ex. 11 Configure Glossary – Filtered HTML Tab – Filtered HTML Config – Input Format Settings

After the Glossary filter has been enabled for the Filtered HTML Input format:

• Click on the Glossary Settings link in the Administration menu to return to the Glossary Settings page.

• Click on the Filtered HTML tab to open up the settings screen.

• Select the following vocabulary items to attach to the Glossary:

1. Cooking Methods2. Food Preservation3. Preparation Methods

2

1

3

Page 80: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 80

Glossary: Ex. 11 Configure Glossary – Filtered HTML Tab – Filtered HTML Config – Term Matching

Within the Term matching group:1. Match type group

– Provides different ways the Glossary filter can search text content

– Word option is the default• Case sensitivity group

– Used to filter out items that do not match a particular case format

– Case sensitive option is the default– Select Case insensitive

• Replace matches group 1. Shows either only the first match on a page or will

show all matches2. Only the first match option is the default

• Blocked elements group – Pertains to HTML elements that should be blocked– Leave this as is

1

2

3

4

Page 81: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 81

Glossary: Ex. 11 Configure Glossary – Filtered HTML Tab – Filtered HTML Config – Link Style

Within the Link style group:1. Link type group

– how hyperlinking of the term to the glossary should be handled

– no default is set– select the normal option

2. Term indicator group– the symbol to use to indicate that this

is a Glossary term– the Superscript option is the default –

change this or leave as is Note: if the Superscript option is

chosen, the superscript text can be changed in the Superscript field

3. Click the Save configuration button.

1

2

3

Page 82: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 82

Glossary: Ex. 11 Configure Glossary – Now You Do It

Now configure the remaining Full HTML and PHP code Input Formats. Here’s a cheat sheet…

For both Full HTML and PHP code, click on the respective tab and enter the settings below:

• Select Vocabulary checkbox = at a minimum Cooking Methods, if completed the Food Preservation, Preparation Methods as well

• Match type option = Leave as is• Case sensitivity option = Case insensitive• Replace matches option = Leave as is• Blocked elements field = Leave as is• Link type option = normal• Term indicator option = Select one

Note: Remember that if you choose the Superscript option, you can enter a character of your choice in the corresponding text field.

Click the Save configuration button

Page 83: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 83

Now, locate a term that you have entered into your vocabulary and take a look at what Glossary does by hovering your mouse over an active term.

Note: The Bake term is the first child term entered in the Cooking Methods vocabulary. You can find this at Cooking Companion > Methods > Cooking.

Glossary: Final Result

Page 84: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 84

Glossary: View Entire Glossary

To view the entire Glossary for this specific vocabulary, just click on the active term link. Clicking on an underlined letter in the alphabet bar will take the user to all included vocabulary terms which use that particular letter

Page 85: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 85

Clicking on the Detailed definition link of a particular term will bring up that term, as well as any published nodes that are associated with that particular term. This association is made possible through the tags that you applied to the node.

Glossary: View Detailed Definitions

Page 86: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 86

Summary

We’re at a point in the development of this site where all of the work that we’ve done isn’t always blatantly obvious.

It will become increasingly apparent, though, as we move into more advanced concepts such as CCK and Views – which will be addressed in a future CWS Workshop.

What we have done is created a very solid foundation upon which we can build an optimized and highly usable website that contains many user friendly features.

The training sites that have been supplied to you for this workshop are yours and will remain yours indefinitely, provided they are actively used. If your site has not been used for three months, though, it may be eliminated with no further notice.

If you choose to progress into other workshops, we will build upon what we have started here.

Page 87: Drupal Training Series

Provided by Central Web Services541-737-1189http://oregonstate.edu/cws 87

Conclusion

This completes the OSU Drupal 6 Developing Site Structures tutorial. For additional tutorials, please visit CWS Training at:

http://oregonstate.edu/cws/training/view/training-materials

To view and register for all OSU Drupal 6 Workshops, visit the Professional Development Central Registration site at:

http://oregonstate.edu/cws/register

To submit a Help Ticket or make a Site Request on-line, go to:

http://oregonstate.edu/cws/contact