Google and the Canonical Link Rel

By  on  

Google has introduced a link tag rel value of canonical which is used for defining the value of the page that Google should use. Why? Lets say you have an eCommerce site and one of the product URLs is:

http://yoursite.com/product.php?p=david+walsh+blog+book

Imagine now that you can make a slight customization to the product that changes the URL to:

http://yoursite.com/product.php?p=david+walsh+blog+book&color=red

Uh oh -- Google sees duplicate content! The code shows essentially the same page so Google thinks you're pulling gangsta stuff. Now you can tell Google what URL to use for the current page to avoid duplicate content penalization.

The XHTML

<link rel="canonical" href="http://yoursite.com/product.php?p=david+walsh+blog+book" />

Don't let your website get penalized by Google; use this link/rel tag combination for your highly variable pages.

Recent Features

  • By
    Conquering Impostor Syndrome

    Two years ago I documented my struggles with Imposter Syndrome and the response was immense.  I received messages of support and commiseration from new web developers, veteran engineers, and even persons of all experience levels in other professions.  I've even caught myself reading the post...

  • By
    CSS Animations Between Media Queries

    CSS animations are right up there with sliced bread. CSS animations are efficient because they can be hardware accelerated, they require no JavaScript overhead, and they are composed of very little CSS code. Quite often we add CSS transforms to elements via CSS during...

Incredible Demos

  • By
    Use Custom Missing Image Graphics Using MooTools

    Missing images on your website can make you or your business look completely amateur. Unfortunately sometimes an image gets deleted or corrupted without your knowledge. You'd agree with me that IE's default "red x" icon looks awful, so why not use your own missing image graphic? The MooTools JavaScript Note that...

  • By
    Morphing Elements Using MooTools and CSS

    Morphing an element between CSS classes is another great trick the MooTools JavaScript library enables you to do. Morphing isn't the most practical use of MooTools, but it's still a trick at your disposal. Step 1: The XHTML The block of content that will change is...

Discussion

  1. Note that the All-in-one SEO WP plugin does this for you. Good to know should you bloggers be worried.

  2. I think the article could have given a bit more info on canonical urls…

  3. @Adriaan: Thank you for your comment. I could have but my fear is spending a ton of time on an explanation when 99% of people would prefer a brief explanation with a sample problem and solution like I provided. I appreciate your honesty!

  4. OK, I had to go to Google to find out where in the document this LINK goes… But this is good info, thanks for the the tip. Google implies that some other search engines look at this too.

  5. emceha

    time to google for more about canonical ;)

  6. Cool information!
    Liked the posts about firefox extensions too, really useful for beginners on that world.

    ps: you forgot to close the link tag.

  7. Add this code to the section of the page.

    < head >
    < title > Davidd Walsh Blog Book< /title >
    < link rel=”canonical” href=”http://yoursite.com/product.php?p=david+walsh+blog+book” />
    < /head >

    @Fabio, No missing < /a > tag as its a < link .. >

  8. Good I want to implement it first and have post this tips. Thanks

  9. great post is there any problem if i use rel tag for all of my links

  10. David,
    Thanks for the tip about rel canonical.

    Peter

  11. You can find more info here: http://support.google.com/webmasters/bin/answer.py?hl=en&answer=139394
    Thanks for the article.

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!