After a week or two of frenzied preparation, coding, updates, and tweaking, the website for the 2007 Toronto After Dark Film Festival has officially gone live.
This year’s redesign — or is it a realign? — brought a few noticeable changes to the site even as the 2007 website still maintains some similarities to 2006’s website.
Most of the changes to the design flowed out of one another. One of the client’s main goals with the new design was that a user would be able to quickly get to the wealth of information on the site. And so the menu was changed to an “expanded” view, which necessitated a three-column layout, which necessitated a wider design optimized for larger monitors, which necessitated revamped mastheads, and so on.
The bigger changes, though, are all under the hood.
Last year’s website was a largely static affair, which meant that any changes to the content or site structure needed to be made by me, the designer. Initially, I didn’t think that would be a big deal. But you’d think that after years of doing this gig, I’d have slightly better foresight.
Even a “static” site is constantly changing, even if the changes are just minor content or layout tweaks. And all of those minor changes add up after awhile, taking time away from more pressing concerns. And so while a redesign was certainly planned for the new site, the primary goal for this year was to move the site to a platform that would make it easier for anyone — be it myself or the festival staff — to make all but the biggest and most difficult changes.
Big shock here, but the Toronto After Dark website is now running on ExpressionEngine.
ExpressionEngine makes for a fantastic and very flexible blogging system. However, managing “static” pages can be a little trickier. Unlike WordPress or SimpleLog, ExpressionEngine doesn’t really have a “static page” functionality. It’s certainly possible to replicate this functionality but it can get complicated and messy to set up and to maintain.
That’s where Mark Huot’s ultra-handy “Pages” module comes into play. Using a very clever combination of ExpressionEngine’s built-in functionality, the module makes it very easy to create a “static” site that is easy to maintain while still leveraging ExpressionEngine’s considerable power.
One thing that I love about ExpressionEngine is its modular make-up, and the fact that all of those modules play together quite nicely. For example, managing the mastheads and sponsor logos — both of which appear on every page of the site — wasn’t terribly difficult with last year’s website, but it was time-consuming and tiresome.
Now, I’ve simply set up individual galleries using the Photo Gallery module. After all, if you think about it, that’s essentially what those random mastheads and that array of sponsor logos are — basically photo galleries that are being used in specialized ways. Using the Photo Gallery module makes it very easy to update and modify those elements of the site, and ExpressionEngine’s templating system makes it easy to incorporate them into the design.
There are, of course, trade-offs to moving to a template-based CMS such as ExpressionEngine. You lose some measure of flexibility. However, that can quickly become an asset because it forces your website to become more consistent and orderly — both very good things. And even so, ExpressionEngine makes it as painless as possible.
One area that was potentially problematic was the festival’s “Contact Us” form. Because of the high volume of e‑mail sent to the festival staff, especially as the festival draws closer and closer, the standard ExpressionEngine contact form just wouldn’t cut it. Thankfully, ExpressionEngine lets you include your own custom PHP scripts, with a few caveats. As such, it was fairly easy to integrate the contact form from last year’s site into this year’s.
Granted, none of this is new or revolutionary. I didn’t stumble across a ground-breaking way of doing things while working on the site. In fact, anyone with any decent measure of web development experience might be scoffing at me right now for my giddiness. But my point is this: that once again, ExpressionEngine has proven itself more than worthy of my most effusive praise. I have yet to find something that it can’t handle. Sometimes a little creative thinking is required, or a little additional functionality that isn’t a “factory default,” but ExpressionEngine is flexible enough to expand to meet my needs.
That’s not to say that ExpressionEngine is the ideal solution for every situation, but it comes pretty close.
All that being said, take a look around the website, kick the tires, and let me know what you think. There’s still plenty to come in the next few months, especially as the schedule announcements start being made — which, if its anything like last year’s schedule, should be pretty cool (and make me very jealous of Torontonians in general).