Optimizing Drupal
  Search Engines




2011   Sandcamp Jonathan Dietz
       JonathanMD@gmail.com
Session Goals
 1   To familiarize you with current best practices for SEO



 2   Show you what needs to be done in Drupal in order to
     comply with best practices


 3   By the end of this session you will be able to identify and
     configure the modules to optimize your content for search
     engines modal dialogue



                                        0
Agenda
 1   Why SEO?         5 Drupal Theme Checklist


 2   Best Practices   6   Questions


 3   Drupal 6 SEO



 4   Drupal 7 SEO
01   Why SEO?
02   Best Practices
Best Practices
Content is King!

Rich content:
  Engages the reader

  Is well written, relevant text

  Video

  Images



Increases search engine rankings and traffic

Promotes the likelihood of quality links from other sites
Best Practices
Create a sitemap and submit to search engines

Content Order
   The order content is rendered in is used to determine its

     importance, and thus its relevance to a particular keyword



  Good                                 Bad (left col above main content)
Best Practices
Descriptive content meta data
   In addition to content that is displayed, you should make

    proper use of descriptive meta content that search
    engines know about.

Title tag
     60 characters or less

     Google: 70 characters

     Yahoo: 64 characters
Best Practices
Meta Tags

Generally carry a very low weight (or not used at all) in
determining search rank

      http://googlewebmastercentral.blogspot.com/2007/12/anse
       ring-more-popular-picks-meta-tags.html
      http://mattcutts.com/blog/keywords-meta-tag-in-web-
       search/

Highly useful in converting search results into click throughs to
your site.
Best Practices
Best Practices
 Heading Tags <h1> - <h2>
 Links <a>




 Image tag <img>
     use a descriptive file name
     use the alt attribute
Best Practices
Search engine friendly (SEF) URLs
Best Practices
Improve Your Site Speed
    Reduce the number of HTTP requests

    Combine JavaScript into one file if possible)

    Combine CSS into one file (if possible)

    Make us of CSS sprites

    Compress (gzip) content

    Drupal/Server caching

    Content delivery network (CDN) such as Amazon s3

    Upgrade your server

    Upgrade your bandwidth
Best Practices
Remove Your Duplicate Content
   Locate Duplicate Content

      Site:mydomain.com inurl:productID

      Site:mydomain.com intitle:”my product name”

   Use Canonical URL links
           http://googlewebmastercentral.blogspot.com?2009/02/specity-your-
            canonical.html
           http://yoast.com/canonical-url-links/
    Use 301 Redirects
Improve your “Link Juice”
    Use rel=“nofollow” on specific anchor tags

      <a href=“#” rel=“nofollor”>
      http://thekeywordacademy.com/link-juice-explained
03   Drupal 6 SEO
SEO Modules
 1                     5
1. Pathauto         6. Menu_attributes

2. Nodewords        7. XMLsitemap
 2
3. Page_title       8. Search404

3
4. GlobalRedirect   9. HTMLpurifier

5. Path_redirect    10. SimpleMeta
                        4


                        5
Pathauto

 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.

 URL: http:drupal.org/project/pathauto
 Version: 6.x-1.5
 Menu: Site Building => URLAliases => Automated alias settings

 SEO Benefits:
 Search Engine Friendly URLs
Nodewords (meta Tags)

 This project allows you to add meta tags to Drupal pages
 both manually and automatically based on various
 settings.

 URL: http:drupal.org/project/nodewords
 Version: 6.x-1.11
 Menu: Content Management => Meta tags

 SEO Benefits:
 Meta Tags
 Canonical URLs
Page_Title

 This module gives you granular control over the page
 title. You can specify patterns for how the title should be
 structured and, on content creation pages, specify the
 page title separately to the content’s title.

 URL: http:drupal.org/project/nodewords_bypath
 Version: 6.x-1.0
 Menu: Content Management => Meta tags => By path

 SEO Benefits:
 Meta tags (per path/URL)
Global Redirect
 Ensures that your content is only visible at the one, best
 URL possible (i.e. requests for node/2 are forwarded to
 “alias-for-node-2”)

 URL: http:drupal.org/project/globalredirect
 Version: 6.x-1.x-dev
 Menu: Site Configuration => Global Redirect

 SEO Benefits:
 Reduce Duplicate Content
 301 Redirects (automatically generated)
 Canonical Tags
Path Redirect
 This module allows you to specify a redirect from one
 path to another path or an external URL, using any HTTP
 redirect status.

 URL: http:drupal.org/project/path_redirect
 Version: 6.x-1.0-rc2
 Menu: Site Building => URL Redirects

 SEO Benefits:
 301 Redirects (manually added)
Menu Attributes
 This simple module allows you to specify some additional
 attributes for menu items such as id, name, cass, style,
 and rel.

 URL: http:drupal.org/project/menu_attributes
 Version: 6.x-1.4
 Menu: Site Configuration => Menu Attributes Settings

 SEO Benefits:
 Rel attribute on Link tags (rel=“nofollow” to improve “Link juice”)
HTML Purifier
 HTML Purifier will not only remove all malicious code
 (better know as XSS) with a thoroughly audited, secure
 yet permissive whitelist, it will also make sure your
 documents are standards complaint

 URL: http:drupal.org/project/purifier
 Version: 6.x-2.4
 Menu: Site Configuration => Search 404 settings

 SEO Benefits:
 Reduces “DOM clutter”
 May improve site load times (slimmer DOM)
Simple Meta
 The Simple Meta module provides a flexible method to
 set meta tags, such as page title, keywords and
 description for current website page. (Nodewords
 alternative)

 URL: http:drupal.org/project/simplemeta
 Version: 6.x-1.3
 Menu: Site Building => URLAliases => Automated alias settings

 SEO Benefits:
 Meta Tags (Not as many options as nodewords)
SEO Helper Modules
Google_analytics

SEO_friend

ContentOptimizer

SEO Compliance Checker (seo_checker)

LinkChecker

SEO_checklist
Google_analytics

 Adds the Google Analytics web statistics tracking system
 to your website.

 URL: http:drupal.org/project/googe_analytics
 Version: 6.x-3.0
 Menu: Site Building => URL Aliases => Automated alias settings

 SEO Benefits:
 Get more accurate results by only tracking certain users or restricting code
 from displaying on admin pages us pasting code in page.tpl.php
SEO_friend

 The Drupal SEO Friend module is meant to be used
 alongside exsisting Drupal SEO modules to make them
 more effective.

 URL: http:drupal.org/project/seo_friend
 Version: 6.x-1.0
 Menu: Site Management => SEO Friend Reports => SEO Reports

 SEO Benefits:
 Content helps enforce good SEO policies
 Reduces duplicate content
 Content analysis (reports)
ContentOptimizer
 The Content Optimizer enables a quick SEO analyzer
 that provides instant analysis of any site content as a
 quick and easy guide to assure SEO best practices are
 consistently followed.

 URL: http:drupal.org/project/contentoptimizer
 Version: 6.x-2.2
 Menu: Site Configuration => Content analysis (or any content edit page)

 SEO Benefits:
 Content analysis (reports)

 Screencast http://www.leveltendesign.com/tools/contentanalysis/seo/drupal/screencast
SEO Compliance Checker

 The SEO Compliance Checker checks node content for
 search engine optimization upon its creation or
 modification.

 URL: http:drupal.org/project/seo_checker
 Version: 6.x-2.2
 Menu: Site Configuration => SEO Checker

 SEO Benefits:
 Content helps enforce good SEO policies
 Content analysis (reports)
Linkchecker
 Extracts links from your content when saved and
 periodically tries to detect broken links by checking the
 remote sites and evaluating HTTP response codes. It
 shows all broken links in the reports/logs section and on
 the content edit page if a link check has been failed.

 URL: http:drupal.org/project/linkchecker
 Version: 6.x-2.x-dev
 Menu: Site Management => Link Checker Reports => Broken Links

 SEO Benefits:
 Content analysis (reports)
 Reduces 404 Errors
SEO_checklist
 This module provides a checklist of good Drupal SEO
 (Search Engine Optimization) best practices.

 URL: http:drupal.org/project/seo_checklist
 Version: 6.x-3.0
 Menu: Site Building => URL Aliases => Automated alias settings

 SEO Benefits:
 Helps you remember to do the initial SEO steps
Performance                (indirect benefit)



Pressflow

Drupal performance/cache

Sprites module

Uninstall unused modules

Attend Brandon Lyon’s session!
    Performance & Scalability, Where to Begin

    Sunday, 11:15 am
04 Drupal 7 SEO
SEO Modules
Redirect (path redirect)

Page_Title

Nodewords

GlobalRedirect

Menu_attributes

XMLsitemap
Define the UI
Many modules still don’t have Drupal 7 versions

Duplicate content on every URL, insert the canonical into every:
   URL http://drupal.org/node/989032
05   Drupal Themes
Theme SEO Checklist
Does not use tables for main site layout

Clean, valid HTML output
    Does not overuse <div> tags to wrap content

    Makes use of template overrides to control html output



Proper header tag use
    Site title on the front page

    Page title on the inside pages



Primary content higher up in the code
    Content section appears before sidebars in the code
Summary
Drupal 7 has to play catch-up to D6’s SEO

Make content a primary focus

Run reports to see what areas you can improve in

Must have modules
      Pathauto
      Nodewords
      Page_title
      GlobalRedirect
      Path_redirect
      Menu_attributes
      XMLsitemap
      Search404
      Goodgle_analytics
06   Questions?

Drupal SEO

  • 1.
    Optimizing Drupal Search Engines 2011 Sandcamp Jonathan Dietz JonathanMD@gmail.com
  • 2.
    Session Goals 1 To familiarize you with current best practices for SEO 2 Show you what needs to be done in Drupal in order to comply with best practices 3 By the end of this session you will be able to identify and configure the modules to optimize your content for search engines modal dialogue 0
  • 3.
    Agenda 1 Why SEO? 5 Drupal Theme Checklist 2 Best Practices 6 Questions 3 Drupal 6 SEO 4 Drupal 7 SEO
  • 4.
    01 Why SEO?
  • 5.
    02 Best Practices
  • 6.
    Best Practices Content isKing! Rich content:  Engages the reader  Is well written, relevant text  Video  Images Increases search engine rankings and traffic Promotes the likelihood of quality links from other sites
  • 7.
    Best Practices Create asitemap and submit to search engines Content Order  The order content is rendered in is used to determine its importance, and thus its relevance to a particular keyword Good Bad (left col above main content)
  • 8.
    Best Practices Descriptive contentmeta data  In addition to content that is displayed, you should make proper use of descriptive meta content that search engines know about. Title tag  60 characters or less  Google: 70 characters  Yahoo: 64 characters
  • 9.
    Best Practices Meta Tags Generallycarry a very low weight (or not used at all) in determining search rank  http://googlewebmastercentral.blogspot.com/2007/12/anse ring-more-popular-picks-meta-tags.html  http://mattcutts.com/blog/keywords-meta-tag-in-web- search/ Highly useful in converting search results into click throughs to your site.
  • 10.
  • 11.
    Best Practices HeadingTags <h1> - <h2> Links <a> Image tag <img> use a descriptive file name use the alt attribute
  • 12.
    Best Practices Search enginefriendly (SEF) URLs
  • 13.
    Best Practices Improve YourSite Speed  Reduce the number of HTTP requests  Combine JavaScript into one file if possible)  Combine CSS into one file (if possible)  Make us of CSS sprites  Compress (gzip) content  Drupal/Server caching  Content delivery network (CDN) such as Amazon s3  Upgrade your server  Upgrade your bandwidth
  • 14.
    Best Practices Remove YourDuplicate Content  Locate Duplicate Content  Site:mydomain.com inurl:productID  Site:mydomain.com intitle:”my product name”  Use Canonical URL links  http://googlewebmastercentral.blogspot.com?2009/02/specity-your- canonical.html  http://yoast.com/canonical-url-links/  Use 301 Redirects Improve your “Link Juice”  Use rel=“nofollow” on specific anchor tags <a href=“#” rel=“nofollor”>  http://thekeywordacademy.com/link-juice-explained
  • 15.
    03 Drupal 6 SEO
  • 16.
    SEO Modules 1 5 1. Pathauto 6. Menu_attributes 2. Nodewords 7. XMLsitemap 2 3. Page_title 8. Search404 3 4. GlobalRedirect 9. HTMLpurifier 5. Path_redirect 10. SimpleMeta 4 5
  • 17.
    Pathauto The Pathautomodule automatically generates path aliases for various kinds of content (nodes, categories, users) without requiring the user to manually specify the path alias. URL: http:drupal.org/project/pathauto Version: 6.x-1.5 Menu: Site Building => URLAliases => Automated alias settings SEO Benefits: Search Engine Friendly URLs
  • 18.
    Nodewords (meta Tags) This project allows you to add meta tags to Drupal pages both manually and automatically based on various settings. URL: http:drupal.org/project/nodewords Version: 6.x-1.11 Menu: Content Management => Meta tags SEO Benefits: Meta Tags Canonical URLs
  • 19.
    Page_Title This modulegives you granular control over the page title. You can specify patterns for how the title should be structured and, on content creation pages, specify the page title separately to the content’s title. URL: http:drupal.org/project/nodewords_bypath Version: 6.x-1.0 Menu: Content Management => Meta tags => By path SEO Benefits: Meta tags (per path/URL)
  • 20.
    Global Redirect Ensuresthat your content is only visible at the one, best URL possible (i.e. requests for node/2 are forwarded to “alias-for-node-2”) URL: http:drupal.org/project/globalredirect Version: 6.x-1.x-dev Menu: Site Configuration => Global Redirect SEO Benefits: Reduce Duplicate Content 301 Redirects (automatically generated) Canonical Tags
  • 21.
    Path Redirect Thismodule allows you to specify a redirect from one path to another path or an external URL, using any HTTP redirect status. URL: http:drupal.org/project/path_redirect Version: 6.x-1.0-rc2 Menu: Site Building => URL Redirects SEO Benefits: 301 Redirects (manually added)
  • 22.
    Menu Attributes Thissimple module allows you to specify some additional attributes for menu items such as id, name, cass, style, and rel. URL: http:drupal.org/project/menu_attributes Version: 6.x-1.4 Menu: Site Configuration => Menu Attributes Settings SEO Benefits: Rel attribute on Link tags (rel=“nofollow” to improve “Link juice”)
  • 23.
    HTML Purifier HTMLPurifier will not only remove all malicious code (better know as XSS) with a thoroughly audited, secure yet permissive whitelist, it will also make sure your documents are standards complaint URL: http:drupal.org/project/purifier Version: 6.x-2.4 Menu: Site Configuration => Search 404 settings SEO Benefits: Reduces “DOM clutter” May improve site load times (slimmer DOM)
  • 24.
    Simple Meta TheSimple Meta module provides a flexible method to set meta tags, such as page title, keywords and description for current website page. (Nodewords alternative) URL: http:drupal.org/project/simplemeta Version: 6.x-1.3 Menu: Site Building => URLAliases => Automated alias settings SEO Benefits: Meta Tags (Not as many options as nodewords)
  • 25.
    SEO Helper Modules Google_analytics SEO_friend ContentOptimizer SEOCompliance Checker (seo_checker) LinkChecker SEO_checklist
  • 26.
    Google_analytics Adds theGoogle Analytics web statistics tracking system to your website. URL: http:drupal.org/project/googe_analytics Version: 6.x-3.0 Menu: Site Building => URL Aliases => Automated alias settings SEO Benefits: Get more accurate results by only tracking certain users or restricting code from displaying on admin pages us pasting code in page.tpl.php
  • 27.
    SEO_friend The DrupalSEO Friend module is meant to be used alongside exsisting Drupal SEO modules to make them more effective. URL: http:drupal.org/project/seo_friend Version: 6.x-1.0 Menu: Site Management => SEO Friend Reports => SEO Reports SEO Benefits: Content helps enforce good SEO policies Reduces duplicate content Content analysis (reports)
  • 28.
    ContentOptimizer The ContentOptimizer enables a quick SEO analyzer that provides instant analysis of any site content as a quick and easy guide to assure SEO best practices are consistently followed. URL: http:drupal.org/project/contentoptimizer Version: 6.x-2.2 Menu: Site Configuration => Content analysis (or any content edit page) SEO Benefits: Content analysis (reports) Screencast http://www.leveltendesign.com/tools/contentanalysis/seo/drupal/screencast
  • 29.
    SEO Compliance Checker The SEO Compliance Checker checks node content for search engine optimization upon its creation or modification. URL: http:drupal.org/project/seo_checker Version: 6.x-2.2 Menu: Site Configuration => SEO Checker SEO Benefits: Content helps enforce good SEO policies Content analysis (reports)
  • 30.
    Linkchecker Extracts linksfrom your content when saved and periodically tries to detect broken links by checking the remote sites and evaluating HTTP response codes. It shows all broken links in the reports/logs section and on the content edit page if a link check has been failed. URL: http:drupal.org/project/linkchecker Version: 6.x-2.x-dev Menu: Site Management => Link Checker Reports => Broken Links SEO Benefits: Content analysis (reports) Reduces 404 Errors
  • 31.
    SEO_checklist This moduleprovides a checklist of good Drupal SEO (Search Engine Optimization) best practices. URL: http:drupal.org/project/seo_checklist Version: 6.x-3.0 Menu: Site Building => URL Aliases => Automated alias settings SEO Benefits: Helps you remember to do the initial SEO steps
  • 32.
    Performance (indirect benefit) Pressflow Drupal performance/cache Sprites module Uninstall unused modules Attend Brandon Lyon’s session!  Performance & Scalability, Where to Begin  Sunday, 11:15 am
  • 33.
  • 34.
    SEO Modules Redirect (pathredirect) Page_Title Nodewords GlobalRedirect Menu_attributes XMLsitemap
  • 35.
    Define the UI Manymodules still don’t have Drupal 7 versions Duplicate content on every URL, insert the canonical into every: URL http://drupal.org/node/989032
  • 36.
    05 Drupal Themes
  • 37.
    Theme SEO Checklist Doesnot use tables for main site layout Clean, valid HTML output  Does not overuse <div> tags to wrap content  Makes use of template overrides to control html output Proper header tag use  Site title on the front page  Page title on the inside pages Primary content higher up in the code  Content section appears before sidebars in the code
  • 38.
    Summary Drupal 7 hasto play catch-up to D6’s SEO Make content a primary focus Run reports to see what areas you can improve in Must have modules  Pathauto  Nodewords  Page_title  GlobalRedirect  Path_redirect  Menu_attributes  XMLsitemap  Search404  Goodgle_analytics
  • 39.
    06 Questions?