A module is a community-created plugin that enhances Drupal's core functionality. From XML sitemaps to better page titles, modules are crucial to the search engine optimization of any Drupal site. Installing modules is easy and once you know how to install one, you probably know how to install them all.
Note
For a complete explanation of installing modules, check out the following links: http://drupal.org/node/120641 and http://drupal.org/node/120642.
In the upcoming chapters, you'll come across a lot of Drupal modules. You need to carry out the following steps in order install 99% of Drupal modules:
1. Download the module from http://drupal.org/project/Modules and extract it.
2. FTP to your Drupal site. Drop the extracted module folder into the
sites/all/modules
folder (if that directory is not there then create it).3. Using your browser, visit http://www.yourDrupalsite.com/user and log in.
4. Now visit http://www.yourDrupalsite.com/admin/build/modules/. If you forget this URL, just go to the admin page and click the Modules link.
5. Select the checkbox next to the module that you just installed. If needed, also tic any sub-modules that you just installed.
6. Click on the Save Configuration button. In a couple of seconds, the newly selected module will install itself. Any errors will appear in red.
7. Go to http://www.yourDrupalsite.com/admin/user/permissions and set the permissions for that module so that different roles can use or administer the new functionality that the module has added (not required for all modules).
8. Go to http://www.yourDrupalsite.com/admin and you'll see links to customize the settings of your newly installed module.
If the module isn't working, be sure to read the README.txt
file that came with the module. Sometimes, there are extra steps required to fully install a module.
Note
Drush: The alternative to manual Drupal module installation
If you're comfortable with using the Unix command line, you should consider Drush. Drush is a module created by Moshe Weitzman that provides a command line shell and Unix scripting interface for Drupal. After you install it, you'll be able to use commands like drush dl modulename
and drush enable modulename
to install and enable modules. No trips to drupal.org and no admin screens so it's very fast.
Now that you know how to install modules, there are several that you'll need in order to optimize your Drupal site.
What follows is a list of the non-core Drupal modules you'll use most often for SEO. (Non-core means not included in the base Drupal installation. However, something might be included in Acquia Drupal so check your Modules admin screen first!) We'll cover almost all of these in more detail later in the book. You can either download them all and install them on your site or grab them one at a time as you work on each SEO task. Either way, don't enable them until you're clear what they do and how to configure them. Sometimes, careful setup is required to get the optimal benefit from a module.
SEO Checklist: It provides a checklist with download links and admin shortcuts to most modules and tasks needed during the SEO process.
To download this module, follow this link: http://drupal.org/project/seo_checklist
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/seochecklist
Step-by-step configuration instructions have been provided in this chapter
Note
The SEO Checklist will help you save time
The Drupal SEO Checklist module helps you keep track of the SEO tasks needed for your site. It doesn't do any SEO by itself—it's a checklist that follows along nicely with this book. Links to download and configure most of the modules listed here are built into the SEO Checklist module. It also puts a date stamp on each task as you complete it so it's very handy if you're working on more than one site or you would like to report the work you've done to a boss or client.
Google Analytics: It helps you keep track of visitors.
To download this module, follow this link: http://drupal.org/project/google_analytics
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/googleanalytics
Step-by-step configuration instructions have been provided in this chapter
Page title: It allows you to set
<title>
tags for nodes throughout your site.To download this module, follow this link: http://drupal.org/project/page_title
Note: The Page title requires the Token module to function Download: http://drupal.org/project/token
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/ page_title
Step-by-step configuration instructions have been provided in Chapter 3, On-Page Optimization
Pathauto: It automatically creates search engine friendly URLs based on the title of your content.
To download this module, follow this link: http://drupal.org/project/pathauto
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/pathauto
Step-by-step configuration instructions have been provided in Chapter 3, On-Page Optimization
Path redirect: It helps create proper redirects.
To download this module, follow this link: http://drupal.org/project/path_redirect
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/ path-redirect
Visit the following link in order to create and change paths: http://www.yourDrupalsite.com/admin/settings/build/path-redirect
Step-by-step configuration instructions have been provided in Chapter 3, On-Page Optimization
Global redirect: It fixes some common URL problems when clean URLs and Pathauto are turned on.
To download this module, follow this link: http://drupal.org/project/globalredirect
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/globalredirect
Step-by-step configuration instructions have been provided in Chapter 3, On-Page Optimization
Taxonomy title: It allows you to set
<title>
tags for taxonomy terms throughout your site.To download this module, follow this link: http://drupal.org/project/taxonomy_title
There are no links to the admin site. Set taxonomy
<title>
on each term page.
Meta tags (formerly known as the Nodewords module): It gives you full control of the meta tags on your site, nodes, categories, views, and so on.
To download this module, follow this link: http://drupal.org/project/nodewords
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/user/permissions
Step-by-step configuration instructions have been provided in Chapter 4, More On-Page Optimization
XML Site map: It creates a Sitemaps.org compliant, search engine readable, dynamic sitemap.
To download this module, follow this link: http://drupal.org/project/xmlsitemap
Note: Be sure to get the 2.0 or higher version of the module
Step-by-step configuration instructions have been provided in Chapter 5, Sitemaps
URL list: It creates a plain text sitemap that lists every URL on your Drupal site.
Use it if you can't use the XML Sitemap module
To download this module, follow this link: http://drupal.org/project/urllist
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/urllist
Step-by-step configuration instructions have been provided in Chapter 5, Sitemaps
Site map: It creates a plain text sitemap.
To download this module, follow this link: http://drupal.org/project/site_map
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/sitemap
Step-by-step configuration instructions have been provided in Chapter 5, Sitemaps
Syndication: It offers a web page which centralizes all of the RSS feeds generated by Drupal.
To download this module, follow this link: http://drupal.org/project/syndication
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/content/syndication
Step-by-step configuration instructions have been provided in Chapter 6, RSS Feeds, Site Speed, and SEO Testing
Menu attributes: It allows you to specify some additional attributes for menu items such as id, name, class, style, and rel.
To download this module, follow this link: http://drupal.org/project/menu_attributes
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/content/menu_attributes
Site verification: It assists with search engine site ownership verification.
To download this module, follow this link: http://drupal.org/project/site_verify
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/build/site-verify
Step-by-step configuration instructions have been provided in this chapter
Scheduler: It allows you to schedule when nodes are published.
To download this module, follow this link: http://drupal.org/project/scheduler
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/scheduler
Step-by-step configuration instructions have been provided in Chapter 8, Content is King
Read more link: It allows you to create customized, SEO-friendly Read more links.
To download this module, follow this link: http://drupal.org/project/ed_readmore
To configure this module's settings, follow this link: http://www.yourDrupalsite.comadmin/settings/ed_readmore
HTML Purifier: It helps fix poor html on user generated content.
To download this module, follow this link: http://drupal.org/project/htmlpurifier
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/filters
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
Mollom: It provides spam protection via the powerful Mollom service.
To download this module, follow this link: http://drupal.org/project/mollom
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/mollom
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
There are a few more SEO modules which are optional. Let's have a look at them.
RobotsTxt: It dynamically generates the
robots.txt
file on multiple Drupal installations.Make use of this module if you have multiple sites running off a single Drupal installation and you need different
robots.txt
files for each site
To download this module, follow this link: http://drupal.org/project/robotstxt
Google News sitemap generator: It creates an XML sitemap that meets the specification for Google News.
Use if you're running a news or media web site.
To download this module, follow this link: http://drupal.org/project/googlenews
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/googlenews
Step-by-step configuration instructions have been provided in Chapter 5, Sitemaps
Top Searches: It shows you what people are searching for on your site.
Use if you want to create more interesting content for your site and you want to know what people are looking for
To download this module, follow this link: http://drupal.org/project/top_searches
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/ top_searches
Step-by-step configuration instructions have been provided in Chapter 2, Keyword Research
Open Calais: It provides access to the free OpenCalais tool from Reuters.
Use if you want automatic tagging of your content based on people, companies, organizations, books, albums, places, facts, etc. Typically used for news sites or companies that interact often with the media although others may benefit as well.
To download this module, follow this link: http://drupal.org/project/opencalais
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/calais
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
RDF: It provides RDF functionality and interoperability.
Required for the Open Calais module.
To download this module, follow this link: http://drupal.org/project/rdf
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/rdf
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
More Like This: It provides links to related content based on taxonomies or words you specify.
Works very well with the OpenCalais module
To download this module, follow this link: http://drupal.org/project/morelikethis
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/ morelikethis
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
Autoload: It does not provide functionality directly. It is required by the More Like This module.
To download this module, follow this link: http://drupal.org/project/autoload
Step-by-step configuration instructions have been provided in Chapter 9, Taking Control of Your Content
Google Website Optimizer: It integrates your site with Google's A/B and multivariate tool.
Use if you want to do A/B testing on your Drupal site
To download this module, follow this link: http://drupal.org/project/google_website_optimizer
To configure this module's settings, follow this link: http://www.yourDrupalsite.com/admin/settings/google_website_optimizer
Step-by-step configuration instructions have been provided in Chapter 10, Increasing the Conversion Rate of Your Drupal Web site
Node Hierarchy: It helps create hierarchy in your site which is good for SEO.
To download this module, follow this link: http://drupal.org/project/nodehierarchy
Alinks: It dynamically turns specific words on your site into links.
To download this module, follow this link: http://drupal.org/project/alinks
Digg This: It facilitates links to the popular social bookmarking site Digg.
To download this module, follow this link: http://drupal.org/project/diggthis
Service Links: It adds links to several popular social bookmarking sites.
To download this module, follow this link: http://drupal.org/project/service_links
There are so many good, helpful modules; it's hard to mention them all. Here are a few non-SEO modules that I consider to be a must for any site I'm working on.
Administration Menu: It makes it quick and easy to get to all the admin functions of your web site.
To download this module, follow this link: http://drupal.org/project/admin_menu
Backup and Migrate: It simplifies the task of backing up and restoring your Drupal database or migrating data from one Drupal site to another.
To download this module, follow this link: http://drupal.org/project/backup_migrate
Devel: It makes it easy to generate a bunch of nodes, taxonomies, and users for testing purposes. It has other helpful functions as well.
To download this module, follow this link: http://drupal.org/project/devel
Notify: It sends periodic emails with details of all changes to a site.
Use if you want to review all posts, forums, or comments posted to your site. Great for responding to comments as they happen.
To download this module, follow this link: http://drupal.org/project/notify
Search 404: Instead of a file not found error if a page is missing, it does a search on the keywords in the URL to show possible matches.
To download this module, follow this link: http://drupal.org/project/search404
Note
PHP memory limits and module installation
If you install a lot of modules in Drupal then you may come across the dreaded "White Screen of Death". It often occurs when you visit the Administer | Modules page; you'll see nothing but a white screen. This means that PHP—the language that Drupal is written in has run out of memory. There are several ways to increase the allotted memory. The easiest is to add the line php_value memory_limit 32M
to your .htaccess
file in the Drupal root. You can adjust this to 48M, 64M or even higher, but 32M typically works fine and conserves memory. Don't just max it out as that's the amount of memory that Drupal will use for each visitor and it adds up quickly, especially on shared servers. There are other options if this doesn't work. To find out more, visit http://drupal.org/node/31819.