Drupal and Search Engine Optimization (SEO)
Earlier today I was asked by a question via email about Search Engine Optimization (SEO) and I wanted to post my response here. The main gist of the question was, "when it comes to SEO and increasing a site's page rank, what does CodeMyDesigns do and what should the client do?". This is by no means an exhaustive overview of Drupal and SEO but should give you an understanding of the tools CodeMyDesigns provides you with to increase page rank. Here was my response:
As a Drupal developer and themer, I tend to categorize SEO into two aspects, technical and implementation. Technically, SEO involves configuring a site so that search engines understand which key words and phrases are important. Some of this is performed when theming the site (ie. when creating HTML templates), while other aspects are performed by modules. Generally speaking here are the different items CodeMyDesigns does on every site:
- Place the node title in header tags, such as H1, H2, etc. (I always make sure to tell clients to place key terms in the node title)
- Ensure main body content is at the beginning of the site's HTML template; we use the Zen theme to achieve this.
- Configure a page's URL so that it displays key words and phrases (i.e. www.example.com/key-words-and-phrases). We use the following Drupal modules: pathauto, path redirect, and global redirect.
- Add a mechanism so your client can enter meta tags and page titles for each individual page. We use nodewords and page title modules for this.
- Add a mechanism so your client can enter link descriptions and image descriptions to page content. This is mostly configured through the WYSIWYG editor (we use TinyMCE) and CCK.
- Configure the .htaccess file so that the website always resolves to either www.example.com or example.com.
Usually, following the above steps will improve search engine rank and get your client to the first 1 or 2 pages of search results. However, if your client is targeting a competitive search term, meaning other sites are targeting the same search term, there are some other technical things we can do to improve search engine rank, such as:
- Decrease webpage load time and size. The boost module helps with this, but we can also optimize the template to reduce HTTP get requests and such. Checkout the Web Page Analyzer tool to see how your site rates.
- Add an XML sitemap using the XML sitemap module.
- Use a unique IP address
- Host the site on a web server in a geographic location close to your client's target audience
- Purchase additional domains that have high rankings for targeted search terms and point them to the domain.
I have done all of the above for CodeMyDesigns.com (except for the hosting part) and rank very well for a number of competitive search terms that I wanted CMD to rank well on.
Implementation, which is what the client is responsible for, involves several steps:
- Selecting words and phrases your client wants search engines to associate with their website. There are a ton of blogs and books that cover this subject.
- Writing content for web pages using the selected words and phrases.
- Posting links on other websites pointing to your client's website using the selected words and phrases
- Actively managing your search engine ranking using SEO tools like Google Analytics, Google Webmaster, and Google Trends
So back to configuring a Drupal site for SEO vs. implementing SEO; the main difference between the two is that implementation is an ongoing process while the technical aspect is usually performed when the site is created.







Comments
Post new comment