Pinchin Environmental
- Online registration of courses
- Ability to pay for courses by cheque or over the phone
- Course calendar
- Custom lists of highlighted content
- Newsletter and blogging integration
- Search engine optimization automatically applied to every page
Pinchin Environmental is a Canadian company specializing in environmental consulting. Launched in October of 2008, this project involved replacing the previous DreamWeaver-based site with a modern, standards compliant website. Using Drupal 5, the site offers features and functionality impossible to implement with the previous system.
Content Types
The following are the primary content types within the Pinchin Environmental website. Within Drupal, content types are used to separate data from presentation, allowing data to be reused and displayed in a flexible manner.
- Page and Blog Entry are used as-is, with a few custom CCK fields added.
- Course pages are a single page containing general information about a course, such as the description, various categories, and applicable province.
- Course dates are instances of a course, containing a date, location, and price. These are linked in the back end to Course pages, allowing a Course page to show a list of upcoming Course dates.
- A Newsletter content type is similar to a page, but contains custom metadata such as the issue number and date published.
Online course registration
A significant component of Pinchin's customer contact is through the offering of free or paid courses. Using the ecommerce module, a system was set up where users could select courses and register themselves or others for attendance. The signup module is used for course reminders over email.
Newsletters
Pinchin uses a third party for distributing email newsletters. The company also requires approval from a manager for a new customer to be added to the mailing list. Newsletters also exist in print, so the online version must match the print version where possible. As the client only had a single mailing list, it was decided to use Webform to allow users to subscribe. After submission, Webform sends an email to a manager at the company to add the customer to their CRM and newsletter. Views was used to display the archive of newsletters. Excerpt was used to allow newsletter teasers to be different than the body, an issue now addressed in Drupal 6.
Notable modules
The following modules are used on Pinchin Environmental's site, among many others:
- CCK and Views
- These modules are among the most-used modules in the Drupal community. For CCK, additional field types added include Phone for phone numbers, CCK Address for addresses, Email to help validate email addresses, and Link to enable structured links to other websites. View field was used to display the list of upcoming course dates on a course page.
- Webform
- Webform is used to allow the creation of user-facing forms within the website by content editors. All contact forms were created with Webform. The layout of most emails sent by Webform are customized with templates. Being able to theme a Webform email in the same manner as any other template on the site was a significant advantage during development.
- Ecommerce
- Ecommerce is used for the course registration system. Additional custom modules written include custom UI and payment modules, as well as additional forms for gathering course registration information.
- Table of Contents
- This module is used to generate a table of contents for newsletters. As many newsletters are quite lengthy, this allows quick navigation of the entire page.
- Views Fusion and Node Family
- These modules are in many ways the precursors to the Relationships feature in Views 2. By creating relations between nodes, it becomse possible to "fuse" views together to merge the appropriate information into one display.
- Node Queue and Node Carousel
- These modules provide a rotating list of current news items for the home page, and block views of hand-picked content for each section of the website. Node Queue provides content editors with the ability to manually modify the order of items within each section's "What's New" queue, regardless of the date posted.
- Custom Error
- During the transition from the previous site, it was important to ensure that any users hitting "Page not found" or "Access denied" pages received a friendly page with appropriate directions. The Custom Error module allows for content to be set for the 403 and 404 error pages without requiring them to be nodes. This ensures that they are not shown in Views, in lists, or in the search engine.
- File Newest Revision
- Developed for Pinchin Environmental, this module allows uploads of files with the same name to have a stable URL. Normally, when revisions are enabled on a content type, uploading a file which replaces a previous revision adds additional characters to the filename to ensure it's unique. This feature allows users to be linked directly to the newest revision of a file, regardless of when that revision was uploaded.
Theme and Design
The theme and visual design was developed in concert with 3Ring Studios. For more information, see their page about this project. The theme was developed as a subtheme of Zen, and the home page layout was developed using a custom layout for Panels.
Questions and Comments
This site is a great example of what can be accomplished by combining contributed modules in unexpected ways. Comments can be posted in the associated blog entry or emailed privately.