In Magento you can setup the canonical url for every product to domain.tdl/product-name.html.

But there is no link to this URL on our whole shop site. In most cases these products are in one category. Sometimes they are in two or more categories. And I guess that is why Magento makes them avaible under this canonical URL.

Could this cause any SEO trouble?

First I thought it would be good to declare a 'main' category and the canonical URL points to this location, so we get a unique canonical URL for our products.

But if the way Magento goes is okay for SEO, we do not have to change anything.

1 Answer 1


The way you/Magento are doing it is correct. As long as you have breadcrumb markup Google will display the category chain in SERP. In the case of multiple categories, the chain displayed depends on which category has most relevance for the keyword. When clicking the SERP you will be taken to the direct canonical page for the item, ie domain.tdl/product-name.html, even if there is no direct way to get there via link.

This also brings up an interesting concept that many OP's disregard - true permalinks. This could help prevent future SEO and human access hiccups in certain cases. I don't mean the Wordpress definition of permalink either (they define it wrong). I mean a link based on item ID and not keyworded url/slug at all. The item ID never changes, whereas the keyworded slug could. Why is this useful? Less 301's and urls that are accessible forever in the case of a future name change.

Let's say you have an item with a url domain.tdl/red-round-widget.html and you want to link to it from like 100 other item descriptions. You paste in that url, the links work, all is good. Then you change the name to domain.tdl/red-circle-widget.html. Unless you don't forget to update, or you are using some kinda dynamic url construct/update method (ie PHP), this doesn't seem like a big deal -- just 301 the old url to the new, all those 100 links still work right. But then you change it again a few months later. And again later. You are now at 4 redirects via 301 to the newest url. This is not good since it's approaching a limit of 301 chaining that Googlebot does not like. How do you prevent this "does not like"? Make those 100 items use a permalink url of item ID instead, completely bypassing the keyworded slug. When bots run through the 100 links, they are dropped into an "ugly" url, but your canonical underneath tells them to see/use the most recent keyworded slug instead, without using a bunch of 301's.

I don't know off the top of the head what those permalink style urls look like in Magento, but it may be something like domain.tdl/index.php?get=product&id=12345 to display product with an ID of 12345 (as an over-simplified example). You can use the same style permalink for things such as "email this page to a friend", social, bookmarking, or other widgets of that nature where long term url accessibility is paramount. This ensures that as long as the item has the same ID, the item will be accessible regardless of how much you change the url structure, the slug, or the parent category(s). It's not a super big deal if you don't ever change names or chain 301's, but it's helpful if you do. Hope that makes sense!


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.