on drupal, part two
If I had to pick the single most useful module out of that whole list, it would be an easy choice: CCK. It’s a super-powerful module that allows you to define content types across your site and create custom fields for those content types.
So, say you want to create subject guides on your drupal-powered site. You could use the standard “page” template that comes with the basic install. A page is pretty simple and looks something like this (on the back-end):

Nothing fancy really, it’s pretty much like any other form you might expect to see in a CMS. In our subject guide example, you’d put all your content in the “body” field and that would be that. Which is just fine, but wouldn’t it be better if your subject guides had fields that matched your content? If it did, it might look something like this: (again, on the back-end):

Creating templates like this is what CCK does. With CCK, you’d create a new content type (call it “subject guide”) and then define what fields you’d like to see on that guide. While it probably looks like a lot of work to create custom content types when a simple page template might do the trick, I’d say it’s worth it for a number of reasons:
- custom searches: with the example above, your users can choose to just search your subject guides (or any other content type you define).
- feeds: you can generate RSS feeds for any (or every!) content type so your users can choose to subscribe to the feed for just your subject guides (for example).
- content display: because your content is pieced out into different fields, you can choose to display the data from any of those fields in different ways. For example, if you’ve created subject guides for every subject in the Humanities, you can generate a list of all the article databases in the Humanities by creating a view that lists the content in the “article databases” field. With the Views module, you can customize the way your pages display just about any way you’d like.
- admin: CCK makes site admin easier for a lots of reasons, ranging from making it easier for content contributors to add content to your site to making user permissions more manageable.
I’ll pick up on the admin stuff in my next post, but for now, I’ll leave you with a list of the custom content types we’ve defined for our site. This might be of limited value since some of these are pretty specific to my library, but I would have loved to have seen similar lists when we were developing our content types (and when I went hunting for them, I came up empty). So, here you go!
- Archive Exhibitions – for “exhibits” pages for Archives & Research Collections
- Classrom Directory – for records that file into the Classroom Directory
- Classroom Audio/Visual Services updates – blog-style posts on the CAVS pages for ‘Professional Activities‘ and ‘New Technology in the Classroom‘
- Collections – for new pages in Collections Services
- Collection Policies – for new collection policy pages
- Department Contact – for new department contact records
- Equipment Information – for pages detailing a piece of equipment for the Computers, Copiers, etc. section.
- Event – for new events that will be added to the Library Events calendar
- FAQ – for new FAQs
- Find Articles – for article databases
- Geospatial Data – for new content for the digital geospatial data section of Maps/GIS
- Government Publications Guide – for gov pubs guides
- How to Find Page – for new pages in the “how to find…” collection of guides
- Library Committee – a page for library-related committees
- Library News – for new posts to the library news & events blog
- LSSD – for new pages in the Library Services for Students with Disabilities section of the site
- Page with image header – for pages with a large image header
- Page with multiple images in header – for pages with refreshing images in header
- Policies and Regulations – for new pages for in the Policies and Regulation section
- Staff Page – for new staff pages
- Study Space – for new study spaces
- Subject Guide – for subject guides
- Webform – for new contact forms or questionnaires
Next: on drupal, part three.
2 Comments