Its time to do a more in depth write up on Drupal and SEO there have been several floating around recently and hopefully this will help tie down the various ideas that have been floating around. But lets start with some of the simple bits like…
Getting past the deadly sins
I wrote a short article on the Deadly sins of SEO websites these sins were on the whole received well by readers though one blogger did I feel miss the point of the article (Though his follow up post is a remarkable piece of work and well worth a read! I love his idea of me on an ego trip), but to summarize these are the major sins I feel are committed by some companies and we all have done them in the past to which in my mind there are no excuses partly as some of them are legality and partly because they are common sense. Here they are:
- No Alt attribute in image tags
- Use of tables for design
- Not using heading tags
- Images instead of text
- Failure to declare a doctype
- failure to declare a language
- Not using robot.txt or htaccess files to control spiders (and people)
Now people added several others including sitemaps, keywords in titles etc, but I initially want to concentrate on the Deadly sins. Luckily there is almost nothing that we need to do as Drupal has done most of the work for us, our template is CSS tableless design, we use alt tags as part of the standard practices built into Drupal (Though with the logo extra data was hard coded to give it a more accurate title) The doctype is declared correctly and it automatically picks up a language (Again we overrode this by declaring the language in the template though this is not needed it just happens we did this time) So the only real issue is when dealing with robot.txt and Htaccess files.
Duplicate content and Drupal 5
Duplicate content is still issue with Drupal and its don to how it manages clean URLs, these turn ?q=node/1 into /node/1 but have a problem luckily the solution is easy to implement with a couple of changes in your .htaccess file which you will find in your route folder Blamcast has an excellent write up on the required changes but I have included some bits here as well
#get rid of trailing slashes RewriteCond %{HTTP_HOST} ^(www.)?yoursite’.tld$ [NC] RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
Where yoursite is replaced with your domain name and tld with the ending of your domain so .com or .net in our case the above rule looks like
#get rid of trailing slashes RewriteCond %{HTTP_HOST} ^(www.)?allaboutassking’.co.uk$[NC] RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
This basically stops their being two versions of the same alias regarding the trailing slash but we also have two versions of the content /node/40 /myarticle to deal with this we need to modify the robots.txt
Add the following to your robots.txt file
Disallow: /node/
Disallow: /?q=node/
I would also add
Disallow:/user/
Unless you have a good reason to leave it open though doing so will stop your user profiles being crawled by search engines.
So that’s the 7 deadly sins covered but what else can we do to make it SEO friendly
Time to go modular
I have covered Drupals’ array of friendly SEO modules before but its worth recapping them and going through some new ones, by default I always add
See the previous post for a much more full round up in addition to these I would like to introduce a couple more, SEO Expert blog has a few interesting modules on this recent round up list and while I don’t agree with all of them (the Google analytics module is a waste of time in my opinion in its current state, simply place the code in your template file) However he does have a good additional module for people running multiple Drupal sites of a single code base.
- Robotstxt- This module is designed for multiple sites all sitting on a single code base, one of the great features of Drupal is the ability to have many sites using the same files, with changes to htaccess files. This module expands that by allowing multiple robot.txt files.
Another module I forgot to include on my original list and picked up by Blamcast
- Global redirect- allows manipulation of aliases and use of 301’s within a Drupal site it does this through a series of checks to remove unwanted duplicate content issues, its not quite as effective as the steps above but works well with them.
So that’s a brief round up of getting your Drupal site SEO ready it may seem like a lot of work but all of these can be done in under an hour with time for coffee to spare, particularly on a new or small site.
Subscribe to The Venture Skills Blog by Email
All our Posts are audio subscribed for more information see here, and to access the podcast feed here
This blog is moving soon, make sure you move with us by using our Feedburner RSS feed, if you have used the autodiscovery button in your browser you may need to swap feeds, simply delete the old feed and add, http://feeds.feedburner.com/VentureSkills For a more detailed explanation on feeds and recieving our content in various formats click here


Subscribe to our Odiogo Audio Feed



March 30, 2007 at 10:08 am
Drupal SEO : The top Drupal SEO modules and how to use them
Drupal has the best out-of-the-box SEO performance of any CMS software that I’ve used, and yet there are a few easy to implement modules that would give an additional boost in Drupal’s SEO performance. Here are the top Drupal modules for Dr…
July 20, 2007 at 9:50 pm
Your absolutely right… I absolutely LOVE drupal.
Still though, I think that vbdrupal gives it more bang for the buck especially with the inclusion of Vbulletin as a back end forum. SEO should be taken into account when creating a site, but most people aren’t aware of that obviously.
There are some websites which dont even bother with SEO or anything like that… purely search engine mayhem… and then there are other sites which look like utter shit, but make a search on it and click on the link and youll be so surprised to see such a goldmine of information opening up. =)
August 8, 2007 at 5:52 pm
You don’t need to add .htaccess rules to remove trailing slashes. The Global Redirect module will do it for you.
September 30, 2007 at 1:20 pm
The best part of using Drupal as your CMS platform is that your theme hopefully manages all your tables, it is difficult to not have a heading tag (let the theme handle this) and the meta tag module can give you the control you need for robot.txt, taking care of nearly 50% of the deadly sins!
* No Alt attribute in image tags
* Use of tables for design
* Not using heading tags
* Images instead of text
* Failure to declare a doctype
* failure to declare a language
* Not using robot.txt or htaccess files to control spiders (and people)
I agree the Google analytics module doesn’t do much. You can just as easily add the code to your footer or other site wide elements, however it makes all this elegant.
October 2, 2007 at 11:45 am
I agree with everything you have said, people that have a website built make the mistake of having it built to suit their eye, no attention is paid to the code and generally a site will contain far to many pictures.
On thing that is confusing a lot of people, is the DC penalty. The word itself would lead a person to believe they have received a penalty or ban, the truth however is all that happens is that particular page receives little to no score.
This is the first time I have read your blog, I like people who simplify SEO, I have bookmarked your site and look forward to reading your posts in the future
T
March 1, 2008 at 6:45 pm
Thank you for your help, I verified that with the Global Redirect the problem and we should not touch any file