A lot of people may have the opinion that Drupal websites are a little bland and even ugly on the design side. It is true that there are a lot of pretty poor looking Drupal themes out there, mainly being the quick and easy free to use themes that can be found all over the web. Having said that there are some pretty good free drupal themes, as shown in a previous blog by Ed.
It is my opionion that a large proportion of Drupal themes that look like they should be banned from the web, are a result of a simple case of bad and lazy web designers. Obviously there are times when, as a web developer, you have no choice over design as some clients come to you with a half finsihed design theme that a friend of a friends dog has produced, but hasnt had time to finsih. And it never seems to go down well when you politely tell them it is so poor as a design that the chances of retaining a visitor for any length of time is slim to none.
However, all this set aside, Drupal design can be as appealing as any other web page with a bit of effort and creative flare. I am not by any means denying that Drupal can be a tricky customer when it comes to design. There have been days, when im adding a simple drop shadow to a wrapping DIV, when ive cried out in dispair as ive got lost in the jungle that is, Drupal DIV's. Very rarely will you see an image wrpped in 35 DIVS, 10 SPAN classses and an A tag. Sometimes i feel its just out to get me. But once you get over the sometimes frustrating structure of a Drupal website, making it look creative and well designed becomes a fairly straight forward affair.
The first thing to consider is the scale of Drupal site you are dealing with and what sort of hosting environment it will be housed by. As you proobably know, Drupal can be a slower running solution and therefore more attention needs to be paid to optimising speed. How does this effect design i hear you ask. Well if you know you are going to be running a large scale Drupal website with multiple users and data transfers etc, you know you need to be doing all that is possible to ensure the website runs smoothly. An important place to start is with the design. Dont include elememts such as large flash slideshows, video streaming on the homepage, very high resolution images, large scale background images etc. Keep the design clean & minimise data intensive elements that will impact the loading performance of your website.
Next is to consider a framework in which your Drupal website will fit. How many page templates will you have? What is the color scheme going to be? How is your compnay logo going to intergrate into the website? These are important first steps to consider when desiging a website, especially Drupal, as you are going to want to be organised with the design, so as you create more content all elements fit together. For example, you will want to have one block template that will work throughout the website. This may be a simple sqaure box with an inner glow and drop shadow, but will it work throughout the website? You must plan for this, work out where on the website you will be using blocks, can they be dynamic in size, will the same template work? If so, then great you have a generic element that will keep consitency throughout the website. If not, then run over the reasons why. Try and simplify things so you can have a single block template to cover the whole website.
This practice can be applied throughout all elements across the entire website. Heading tags (h1,h2,h3,h4,h5), P tags, TABLES (tr, td), UL/OL lists, LI's, wrapper DIVS, A tags, SPAN clasesses and many more, can all be styled to ensure consitancy. In this way as user browse through the website, the design remainds consistant and easy on the eye. You are far more liklely to retain visitors if they find the aesthtics of your website a please to look at.
Designing a Drupal website is really about planning and orgainsisation. Make sure you know what your pages are going to look like layout wise. Plan the design framwork around the layout you are going to be using and whereever possible make elements generic and consitant throughout the website.
Below are some examples of some excellent Drupal theme designs.