Drupal SEO : The top Drupal SEO modules and how to use them
By Fili • Mar 28th, 2007 • Category: Drupal, SEODrupal 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 Drupal SEO and best practices on how to use them.
-
First off, if you haven’t done so, quickly enable Cleanurls and the core Path module in your Drupal installation from the admin interface. Now, let’s get down to the modules :
Page Title
The page-title is an extremely crucial SEO element and this module will allow you to set in any way you prefer.
This module gives you control over the page title. It gives you the chance to provide templates for how the title should be structured, and on node pages, gives you the chance to specify the page title rather than defaulting to the node title.
Tips :
- I find the default settings to be satisfactory.
- Do note that you might need to play around with your theme to make this module work.
Pathauto
The page URL path is another important SEO and that can be set manually through the core Path module, but Pathauto takes that a step further with an autocreation of URL aliases based of your specs.
The pathauto module automatically generates path aliases for various kinds of content (nodes, categories, users) without requiring the user to manually specify the path alias. This allows you to get aliases like /category/my-node-title.html instead of /node/123. The aliases are based upon a "pattern" system which the administrator can control.
Tips :
- I recommend not setting anything to include dates, categories, breadcrumbs and the likes in your Pathauto alias settings unless you’re absolutely sure this is what you need. You might change your mind about the category, or where something should be in a book, or maybe even want to report an old blog post. In my opinion - set it to the type followed by the title, AKA - [type]/[title].
- If you define feed aliases, remember that they will contain duplicate content for search engines that might hurt your SE rankings, so you’ll have to add a disallow rule for those in your Drupal robots.txt.
- It took a while for the the developers to add the warning on not using the index aliases. In my opinion, this feature should be completely removed from pathauto for endless reasons (like alias duplication and SEO content duplication problem).
Global Redirect
Duplicate content gets you penalty with the search engines, and that’s exactly what Global Redirect is for.
Simple module which…
- …checks if the currently url has an alias set and does a 301 redirect to it.
- …checks if the currently url has a trailing slash, removes it and checks if that has an alias and, if so, does a 301 redirect to that.
- …Finally, checks if the current URL is the same as the site_frontpage, if so - then redirects to "nothing" (ie the frontpage).
Although might be resource consuming, and could be configured by hand in your .htaccess, this will save you a world of trouble and prevent your content duplication problem.
XML Sitemap (formerly Google Sitemap)
To make sure all your site pages are indexed by search engines, you should create an XML sitemap and submit it to Google and Yahoo. XML Sitemap will export that sitemap for you.
The XML Sitemap module creates a XML sitemap in accordance with the Sitemaps.org specification.
Tips :
- It will not completely solve content duplication problem, but you might want to disable "Include links to taxonomy term pages"
Meta tags (Nodewords)
Metatags still play a role in some search engines, and they do provide vital information about every page with a preview description and relevant keywords. Metatags will help you define those, and will setup default metatags when those don’t exist.
This module allows you to set some meta tags for each node. Giving more attention to the important keywords and/or description on some of your nodes allows you to get better search engine positioning (given that you really only provide the keywords which exist in the node body itself, and do not try to lie).
Tips :
- With all that’s said about Site mojo and outgoing links, I still keep "all=index, follow" on most of the sites I run. I believe rel="nofollow" should mainly be used per link or per page and not as a general rule, but it does depend of the kind of site that you run.
- Make sure that "Use the teaser of the page if the meta description is not set" is enabled, and that tags are outputted in the html head.
Multiping
Pinging is used to notify ping sites that your site has updated so that crawlers will come and index the new content to include the changes made. Drupal still doesn’t have good ping support and Multiping aims to fix that, allowing to add as many ping servers as you wish.
A replacement for the ping module of Drupal. It allows pinging of multiple sites (configurable via a web interface). If a site is unreachable, the ping request will be sent again during the next cron.php run.
Need a few preset ping servers? just import this to your database after setting Multiping up :
INSERT INTO `multiping` VALUES (4, ‘http://bulkfeeds.net/rpc’, ‘http://bulkfeeds.net/rpc’, ‘weblogUpdates.ping’, 1175127469, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (8, ‘http://blogsearch.google.com/ping/RPC2′, ‘http://blogsearch.google.com/ping/RPC2′, ‘weblogUpdates.ping’, 1175127469, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (9, ‘http://rpc.weblogs.com/RPC2′, ‘http://rpc.weblogs.com/RPC2′, ‘weblogUpdates.ping’, 1175127469, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (11, ‘http://ping.feedburner.com/’, ‘http://ping.feedburner.com/’, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (12, ‘http://rpc.blogrolling.com/pinger/’, ‘http://rpc.blogrolling.com/pinger/’, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (13, ‘http://api.my.yahoo.com/RPC2′, ‘http://api.my.yahoo.com/RPC2′, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (17, ‘http://rpc.weblogs.com/RPC2′, ‘http://rpc.weblogs.com/RPC2′, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (18, ‘http://rpc.pingomatic.com/’, ‘http://rpc.pingomatic.com/’, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (19, ‘http://rpc.technorati.com/rpc/ping’, ‘http://rpc.technorati.com/rpc/ping’, ‘weblogUpdates.ping’, 1175127470, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (21, ‘http://api.feedster.com/ping’, ‘http://api.feedster.com/ping’, ‘weblogUpdates.ping’, 1175127471, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (22, ‘http://api.my.yahoo.com/RPC2′, ‘http://api.my.yahoo.com/RPC2′, ‘weblogUpdates.ping’, 1175127471, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (30, ‘http://ping.feedburner.com’, ‘http://ping.feedburner.com’, ‘weblogUpdates.ping’, 1175127471, 1, 1, ‘N;’, 0);
INSERT INTO `multiping` VALUES (32, ‘http://ping.weblogalot.com/rpc.php’, ‘http://ping.weblogalot.com/rpc.php’, ‘weblogUpdates.ping’, 1175127471, 1, 1, ‘N;’, 0);
Search404
Although disputed for its SEO value (positive/negative) I think it’s worth mentioning this module and letting you decide this one on your own. It is important, however, that the pages that are not found return a "404 not found" message and not an "ok "message.
Instead of showing a standard "404 Page not found", this module performs a search on the keywords in the URL, e.g. if a user goes to http://example.com/does/not/exist, this module will do a search for "does not exist".
-
Last, not SEO related directly, but extremely important to keep your SEO components up to date and bugs free is the Update module, which should really make it into core. If you’re using 4.7 or maybe you’re interested in upgrading to dev releases, then you should consider installing Release Monitor instead.
Related posts:
- Drupal SEO : Verifying 404 Not-Found/Forbidden headers are not OK and custom 404 pages
- Drupal SEO - using robots.txt to avoid content duplication
- Website Google Search results within your Drupal site
- IE7 login problems on various Drupal installations
- Drupal SEO : A complete beginners step-by-step video tutorial
[...] Drupal SEO : The top Drupal SEO modules and how to use them [...]
[...] The top Drupal SEO modules and how to use them [...]
[...] drupal module top lists: Troy Schneider’s top ten Daan’s list of used drupal modules A SEO view on modules from fiLi And 5 musts from Keith’s marketing perspective tell the others These icons link to social [...]
I have used a few of them on my site. Apparently, some of those have been upgraded to the later version, with bug fixed in Drupal 4.7.8.
Great article. I have been running a Drupal site for a month or so, a fitness training journal site, and have been struggling to get it going really. Hopefully these modules with give me the edge! I have installed Pathauto already, but all the others are new to me, so Thanks!
[...] SEO. You can do a few more Drupal SEO tweaks like use supporting modules I wrote about in “Drupal SEO : The top Drupal SEO modules and how to use them“, make sure you’re “Drupal SEO: using robots.txt to avoid content [...]
Drupal is still proving to be a leader, but I think in the last couple of years Wordpress.org has made up some ground SEO-wise on Drupal. Drupal seems to have got a bit stuck, not a lot is happening. It is still excellent, and I use it for all projects that require a robust CMS, but it does not seem to be getting developed at a very quick pace at the moment. I am actually worried that the OS community may eventually move on to other projects.