A new comment on my old post that explains how rel=canonical element (tag) works gave me inspiration to write another article about rel=canonical. This time, I’ll try to explain why and where rel=canonical is usually necessary in a Magento store.
I’ll leave technical implementation and decision should you use any of the existing extensions or go for custom implementation to you. I’ll just cover the marketing and SEO perspective on the issue.
First, you need to understand why are you using rel=canonical and NOT using 301 redirection. You are using rel=canonical over 301 because you have pages that should be accessible to users but feature identical content as some other page. This means you can’t implement a 301 redirect since you don’t want user to be redirected back to original but you want to tell search engines that the page they are about to index is actually a copy of another page and all of the SEO credit should go to that original page instead of spreading it evenly across copies and thus lowering original page’s ranking position in SERP.
The most critical point in Magento where rel=canonical implementation is extremely necessary is product listing on category pages. Lets have a look at such a page on a Magento demo store with sample products:
What we have here is a page with just 5 products that actually has at least 180 identical copies with different URLs by default (credits to Mladen for taking time to calculate the number of combinations). What am I talking about?
- You can sort them by Grid or by list
- You can sort them by Position, Name, Price and Contrast ratio
- You can show 9, 15 or 30 per page (although there is only 5)
- You can sort them ascending or descending
Each of these can be selected on it’s own or in combination with any or all of the possible selections and it will bring back identical content but with different URL. You can’t use 301 to redirect user back to the category page since you want user to be able to sort the products this way and if you redirect him he’ll see the old sorting again, so you have to use rel=canonical and redirect only search engines back to the original page.
The same thing applies to https vs http URLs, print pages, and basically any link that changes the visual elements but doesn’t change the content of the page.
Need help with your Magento store’s SEO? Request a quote!