Late in 2008, an idea began to gather steam. The idea was to launch a news website about Canadian motocross, but not just another site that dealt with the industry from a sterile, detached viewpoint. Direct Motocross was born from a passion to create a site that captured the true spirit of Canadian motocross, the grit and the grime and the grease.
Drupal has strong credentials in news websites, so we saw it as an ideal fit. Using Drupal also meant that we could quickly incorporate links to popular social media websites, sophisticated (but intuitive) image handling, and more.
All this planning was taking place against the backdrop of the most severe economic downturn in 80 years, and Drupal made it possible to develop a feature-rich website without requiring an extensive team of developers. What's more, core development took place during a very tight development window, as we wanted the site to launch on Jan 1, 2009.
Content
At its core, DirectMotocross.com is about news. Regular contributors Danny Brault and Steve Matthes have already made names for themselves writing for other publications, so we knew we'd have a steady flow of news features, including interviews, podcasts, and more. We also knew we'd have a stream of smaller updates, quick snippets of news we'd want people to access quickly. We used CCK to set up specialized content types for all of these, and made extensive use of Views to create different ways of accessing them.
To power the podcasts, we employed the Flashnode module for easy node creation, using the popular JW media player.
To make it easy for contributors, we built in a number of modules to allow for extensive content management capabilities directly form the browser, including FCK Editor, IMCE and IMCE Mkdir.
The Theme
We designed the site to reflect the personality of the industry, and built it as a subtheme of the Zen theme. We also added some jQuery goodness to animate some of the rollovers, and used the LightBox2 module to provide quick, modal-style access (a little jQuery trickery was needed here too). To ensure search engines would still be able to index the modal content, we created views to build menus to standard formatting of the content, and used jQuery to point to the modal versions instead.
We also created an adaptive layout for the home page, which splits out to four columns on large monitors to make better use of the available space.
Making Sense of It All
Drupal's taxonomy system is definitely one of its strengths, and we wanted to use it to its maximum effect, helping people to follow particular racers, as well as specific topics. In fact, because Direct Motocross has such a variety of different content types, we wanted a more structure taxonomy page, and the Panels module was the perfect solution.
The Glossary module made it even easier for our users, allowing us to automatically link the names of riders to their profile pages, listing breaking news and new features related to them, as well as images, wallpapers, and more.
Content Profile
To help the site feel like more of a community, we wanted our MX fans to not only be able to comment on the site's content, but also offer up their perspective on the Canadian motocross community, including their favourite tracks, favourite riders, and best racing memory. Using the Content Profile module allowed us to tie some of this information into the taxonomy setup so that, as an example, rider pages can list the users that have identified themselves as fans.
Image Handling
Photography is a big part of motocross, particularly because the sport creates such spectacular images. We're fortunate to have one of Canada's best shooters, James Lissimore on board, but needed to make it easy for him to post his outstanding photos to our site. We went with the ImageField and ImageCache to make it easy for contributors to upload images directly with content, and be able to efficiently re-use them in a variety of formats. Once again Lightbox2 proved to be tremendously useful, with an elegant solution for slideshows. A minor hack to ImageCache also allowed us to offer wallpapers not only in a wide variety of sizes, but that also download automatically.
Show Us Where
Another of Drupal's strengths is integration with third-party sites, so we wanted to tap into the integration with Google Maps. By using the Location and GMap modules we were able to visually show not only where in the Great White North different stories were unfolding but where motocross fans were, too.
The Amazing Races
Fundamentally, motocross is all about the races, so we also set up a race schedule using the Date and Calendar modules. The schedule will show upcoming races, with an ability to sort the schedule in a variety of ways. The schedule can also be viewed as a calendar, or as a map, and can be exported in ical format for easy integration with popular software such as Outlook or iCal.
Drupal 6
We knew going in that the vast majority of what we wanted to do was possible with Drupal 6, and decided that this would give us the most longevity going forward. In fact, some of the modules we've used are only available for Drupal 6, or at least offer more features in their D6 versions. The only deal-breaker for us with D6 would have been if we needed to do e-commerce right away, as Ubercart wasn't then available in a D6-compatible release. We were able to launch without such functionality, however, and it appears a stable version of Ubercart for Drupal 6 is nearing release.
Challenges
- During much of development, Panels was still working out some kinks, which led to some difficulties, but recent releases have greatly improved that situation.
- We chose OpenX as an ad server specifically because of its Drupal integration, but it ended up being easier to just use the native OpenX embed code within a Drupal block.
- A Drupal 6 version of Meta Tags was only recently released, so we're still working to get that fully integrated.
- Custom Breadcrumbs has been a terrific addition to our site, but did present a few challenges, especially getting it to work properly with some of our Panels-based taxonomy pages, and the pages that they're meant to link off to.
- For a brief time we had Tagadelic and Cumulus installed, and the effect is incredible, but it ended up proving too much of a burden on our server. We're hoping to try a patch to make Tagadelic work its magic as part of a cron run, hopefully making it less of a burden during standard page serving.
A Big Thank You
Given the limited resources we had to put together this site (in both time and manpower), there's no way it would be anything close to what it is today if it weren't for Drupal. A heartfelt thanks to everyone who contributes to Drupal, both to core and to the contributed modules. We've tried to contribute back where we could, offering up fixes to the issues we encountered. We also hope contribute towards new features we'd like to see such as bulk import and IPTC support for ImageField.
It's also worth noting that even with extensive use of modules (65 contrib and 19 core) the site runs well on inexpensive hosting, even with thousands of visits every week. Memory usage does still present the occasional challenge, however.
The feedback we've gotten on the site so far has been glowing. People love the format, and the ease of use for contributors means they can focus on telling compelling stories about Canadian motocross. We've got some great new features planned for the summer, so for us, this is only the first lap!
Comments
Great looking site,
Great looking site, congratulations!!
What was your total development time? Couldn't see it in the write up.
Tom
http://drupalsn.com/user/thomjjames
______________________________________________
https://tomswebstuff.com
Sort of a moving target
We did some initial design in early November and some initial setup in November too, but the bulk of the development was in December. Of course, we've doing ongoing tweaks since launch too, so total development time is a little hard to say with any precision.
Cool site
This site is amazing.
Congratulation!
http://www.webskydev.com
gud site
fantastic work, wish you all the best keep it up.
Tagadelic
Just wondering - do you have any stats on Tagadelic? I'm considering it on one of my high-traffic sites, but if it's too much of a burden on the server, I'll have to reconsider. Is there any way to cache it the way it's set up right now, or will we have to wait for your patch? (Great site, btw!).
__________________
Personal site: www.jeffgeerling.com
I'll defer to Khalid on this one
I'll defer to Khalid on this one. I will say that I noticed an immediate impact on performance as soon as I turned it on, but my main impetus to turn it off came from a discussion here:
http://2bits.com/articles/high-php-execution-times-drupal-and-tuning-apc...
Sadly, I missed that discussion (maybe I can talk him into a repeat at the London Drupal Users Group sometime), but at first glance it appears that something like APC cache might indeed be helpful.
Tagadelic
Here is more specific info on tagadelic and ways to make it faster.
All you need is a hook_cron() that creates the tag cloud and calls cache_set() on it, then the block rendering will use this cached data.
--
Drupal performance tuning and optimization, hosting, development, and consulting: 2bits.com, Inc. and Twitter at: @2bits
Personal blog: Ba
Nice site
Nice site thanks for the write up.
cool..
Great work.. and thanks for the write-up.
Why did you choose to go for a fluid layout?
Noushad Moidunny
noussh.com
Preference
In general, I prefer fluid layouts. I've read usability experts who tout them as the better approach, though I know fixed-width layouts have their proponents too.
It's my belief that fluid layouts best take advantage of the medium, by allowing the layout to suit the device on which it's being viewed. As it is, I can read the site well on both my 20" monitor and my iPhone.
yay for variable widths
Damn sexy site.
Nice touches, like the animated highlights on the news feed. The pop-up content looks pretty good too. I found it odd at first not having it as content ... but then realized that it's appropriate for feeds!
I was interested in the wide-screen layout. It does the job for fixed screen sizes, but the front looks pretty funny occasionally at many in-between resolutions. A very clever use of floats and nested floats in general. The riders gallery for example is a perfect win for fluid layouts.
Good use of floated elements at every resolution on the articles!
I love it.
Probably solves other graphic width problems by using fixed building blocks like that.
Visually I find the super-high contrast a bit of a strain to look at - but that's probably because I'm using a big screen that's screaming at me. Great however for PDAs
.dan.
EDIT:
Could do with some navigational help from the individual race listings (from calendar). They are a bit of a dead end. Breadcrumbs?
.dan. is the New Zealand Drupal Developer working on Government Web Standards
Agreed on all fronts
I agree, there are definitely some widths where the front doesn't balance as much as I'd like, but at least there's some nice background to look at through the gaps. ;-)
I wish there was a way to center the content at some of those resolutions, but I did a fair bit of experimenting and nothing seemed to work, at least not without compromising the layout for higher resolutions.
Agree with you too about the races, that's one of the newer sections and needs some attention. Breadcrumbs is a good suggestion. Thanks!
And thanks all for the positive feedback. We've poured a lot of love into this one.
Great looking site !!! One
Great looking site !!!
One thing you should look into:
The "more" dropdown menu appears behind the "advertisement" below it
at least in Firefox 3.0.6
------
GiorgosK
Web Development
Wallpaper
Awesome site! I like the imagecache concept for wallpaper images. It would work well on my site at www.squaw.com
However, the links are currently returning a "page not found" error...
Fixed now
Dang! I accidentally over-wrote the custom module the last time I upgraded Imagecache. Should be working now.
this site is amazing
this site is amazing !!!
Congratulation
nice case study!!
Its a nice case study. Congratulations!!!
---~~~***~~~---
aac
congrats from a motocross fan at Acquia
Cool site and case study. Nice to see drupal being used to support mx, particularly in Canada (the folks at http://www.nanaimomx.com/ have also been evaluating drupal). Long ago and far away I was a racing team mechanic for Yamaha (rider: Gary Jones) and Husqvarna (rider: Billy Clements), so it's fun to have great online resources. I'll definitely keep your site bookmarked!
nice overview
and site!
2 q.
1.how did u make that slider of images on front page, with numbers on side, what did u use?
2.how do u make file for subrscribing to your events that u have here http://www.directmotocross.com/calendar/ical is it automatic with calendar?
Adriadrop Drupal development
Thanks! Answers Below
1. I set up a view to generate a list of images with captions, then used the jQuery cycle plugin to scroll them and generate the navigation between items. There is a Drupal module for cycle, but for our purposes it just seemed easier to work directly with the JS, especially because we wanted to play with a lot of the settings.
2. The Calendar module has a Views display for ical export. All the different calendar permutations (schedule, calendar, map, ical) are different displays for a single view.
Great looking website
That's a great looking website !
it is one of the most beautiful motocross website i've seen.
Congratulation.
Poker en ligne
Great looking site!
Thanks for the write up, another fantastic example of how powerful Drupal is.
Thanks for sharing it with us!!
Great looking site! You
Great looking site! You should consider the fixed bg-image. It's a bit distracting.
Take a look at: www.drupal.dk
Wow, great work!
I found you in a search engine, and was really glad I did. What a great job you are doing, what a challenge!
Keep on keeping on.
Steve
Background
The layout seems nice and professional. Although the background can get annoying because it links you to another page whenever you click on it.
Motorcycle Camera