Greyhead.co.uk is built on the Drupal 6 content management framework and, I hope it goes without saying, is entirely put together and managed by me (that's Alex Harries, in case you lot at the back of the class haven't been paying attention).
The theme is a simple custom theme based on the Blueprint sub-theme. I created it to be as simple and uncluttered as possible - as a portfolio theme ought to be - so it can show off the work being displayed in it, kinda like the digital equivalent of not adding diamante bling and sparkly bits to the display case you use to show off your Pulitzer prize, although I haven't won a Pulitzer prize, and probably wouldn't know one if it bit me on the nose...
The functionality is all controlled through the use of the Features module, which allows me to set the site's configuration in code; this means that I can develop the site on my laptop and simply synchronise the live codebase via Git, rather than having to develop on my laptop and then faithfully copy each and every modification to the live site. This also means that I can make changes to the live site on-the-fly, such as tweaking a module setting, and then I just have to re-export the affected feature and merge it back into my local copy of the site. There are features for the portfolio, photography, blog, video, and mixtapes sections, as well as a site-wide configuration feature.
There are, predictably, quite a few modules in use. Some of the most interesting ones are:
- Boost, which provides static HTML page caching for anonymous users - entirely bypassing PHP and the database - to speed Drupal's response times up;
- Admin module, which provides a very simple-to-use menu overlay for privileged users to quickly administer their sites;
- The Rubik administration theme, to make the admin experience a lot nicer than either the default Garland or my Greyhead/Blueprint themes could achieve;
- Features, Strongarm, Exportables, Chaos Tools and a number of other related modules which all allow the management of the site's configuration through code;
- Menu Trails and Menu Settings Per Content Type to improve the behaviour of Drupal's menu system for end-users and editors;
- The inevitable Content Construction Kit (aka CCK) and Views modules, along with a few extension modules such as Filefield (and some modules which extend Filefield, too, such as Imagefield);
- Every developer's first-point-of-call Drupal module, Devel, which is pretty-much vital for any aspect of site building;
- Imagecache, which is doing the majority of the heavy-lifting in the portfolio and photography sections;
- Wordpress Import, a very well-written module (as you'd expect of anything popular among Wordpress folks - yes, I'm openly a Wordpress fan!);
- Nodewords for improved meta-tagging;
- Backup and Migrate, which takes daily backups and weekly-rotated backups;
- Better Formats, WYSIWYG and CK Editor to handle the brain-meltingly over-complex weirdness that is Drupal 6's input formats and filters system;
- Comment Notify module, to allow folks to receive an e-mail when their comments receive a reply - how else is a small site like this supposed to keep people coming back to keep a conversation going otherwise?!;
- Pathauto for nice URLs;
- SEO Checklist for the times when I'm beseiged by paranoia that not everyone in the world (+dog) is reading my site </sarcasm> ;o)
- CAPTCHA for anti-spam fun;
- Share widget, so readers can spam their friends/colleagues/significant others/dogs about the awesomeness* they see on this site (* take this adjective with a pinch of salt, please...);
- Google Analytics (I refer you to my previous comment about SEO paranoia...);
- Similar By Terms;
- ... aaaaand XML Sitemap.
This site is very much a constant work-in-progress; current plans include improving my portfolio section (as I'm not convinced it shows off my work as well as it could) as well as adding a lot more examples of my work to the site, and some improvements to the photo gallery which, I'm hoping, will motivate me to add a load more of my photos from my Flickr stream (and to make me get out with the camera a bit more!).
For now, that's as much as I can think of to write about; drop me a line if you have any questions!
Thanks for reading,