How (or if) to apply re canonical tags to Shopify?
-
Anyone familiar with Shopify will understand the problems of their directory structure. Every time you add a product to a 'collection' it essentially creates a duplicate. For example...
- https://www.domain.com/products/product-slim-regular-bikini
may also appear as:
- https://www.domain.com/collections/all/products/product-slim-regular-bikini
- https://www.domain.com/collections/new-arrivals/products/product-slim-regular-bikini
- https://www.domain.com/collections/bikinis/products/product-slim-regular-bikini
- etc, etc
It's not uncommon to have up to six duplicates of each product.
So my question is twofold:
- Firstly, should I worry about this from an SEO point of view? I understand the desire to minimise potential duplicate content issues and also in focussing the 'juice' on just one page per product. But I also planned on trying to build the authority of the collection pages. If I request Google not to index the product pages which link off the collections, does this not devalue these collections pages?
- Secondly, I understand the correct way to fix these is using 'rel canonical' tags, but I'm not clear about HOW to actually do this. Shopify support has not been very helpful. They have provided two different instructions, so just added to the confusion (see below).
Shopify instruction #1: Add the following to the theme.liquid file...
<title><br />{{ page_title }}{% if current_tags %} – tagged "{{ current_tags | join: ', ' }}"{% endif %}{% if current_page != 1 %} – Page {{ current_page }}{% endif %}{% unless page_title contains shop.name %} – {{ shop.name }}{% endunless %}<br /></title>
{% if page_description %}{% endif %}
Shopify instruction #2: Add the following to each individual product page...
So, can anyone help clarify:
- The best strategic approach to this inherent SEO issue with Shopify (besides moving to another platform!)? and
- If 'rel canonical' tags is the way to go, exactly where and how to apply them?
Regards,
Murray
-
Howdy,
I assume that in your case it doesn't happen automatically. In this case you'll need to use an IF statements in the head/header file. Basically, it would be this:
IF current page url = url you want THEN display canonical tag with wanted url
Repeat that for all needed url and you are good.
If there are many of those, CASE might be better.
-
Good answer!
I have a question! If I just wanna add one or two canoncial tags on specific page(s), how I can do it on shopify coding?
-
How can I fix this problem with Shopify? Shopify does not seem like it is a problem. One of their solutions is to no index the other pages, but I want all the google juice and google love going to the main page.
Current Setup:
https://wrestlinggear.com/collections/wrestling-shoes rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/accessory rel - https://wrestlinggear.com/collections/wrestling-shoes/accessory
https://wrestlinggear.com/collections/wrestling-shoes/adidas rel canonical - https://wrestlinggear.com/collections/wrestling-shoes/adidas
I want it like this:
https://wrestlinggear.com/collections/wrestling-shoes - rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/accessory - rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
https://wrestlinggear.com/collections/wrestling-shoes/adidas- rel canonical - https://wrestlinggear.com/collections/wrestling-shoes
Of course there are a lot more pages like this that I would like to rel cannoical back to the main collections pages.
-
Use tools like SEO Frog
-
Well, if it automatically doesn't work, then you gotta do it manually, right
-
I don't believe this is the answer. I have several other clients on Shopify who do not have goals for macro conversions, but we are seeing conversion data in GA.
Besides, I was always under the impression that if you have ecommerce enabled, it's better not to use goals for transactions as it might duplicate. Is this not the case?
-
I know how to check whether the code is there. But how do you check whether or not specific pages have been indexed by Google?
As far as I can see Google Search Console only reports on the number of pages indexed, not which pages have been indexed. Is there any way to get an actual list of indexed pages?
I know running a site: query will show up all the results, but I just want a list (eg CSV) of the URLs indexed.
-
Yes, I am. Here is a link with answers to your troubles: https://help.shopify.com/manual/reports-and-analytics/google-analytics/google-analytics-goals-and-funnels
-
Yes, it is supposed to. Try it, check it - it's pretty easy
-
Are you familiar with Shopify?
I have another issue where GA tracking code is not firing on the Thank_You page. I have double checked GA config with the GA implementation twice! But the problem seems to be with Shopify, since this page sites on their site (checkout.shopify.com) and they seem unable to fix it.
-
Thanks Dmitrii,
So will that one line of code fix the issue for ALL products and ALL collections?
-
Howdy.
Shopify does canonicals automatically. Basically all the collections products urls will have canonical to product url. Like this: https://www.domain.com/collections/all/products/product-slim-regular-bikini will have canonical to
https://www.domain.com/products/product-slim-regular-bikiniIf it doesn't happen for you automatically, simply insert this:
In the main theme.liquid file in the head section.
Got a burning SEO question?
Subscribe to Moz Pro to gain full access to Q&A, answer questions, and ask your own.
Browse Questions
Explore more categories
-
Moz Tools
Chat with the community about the Moz tools.
-
SEO Tactics
Discuss the SEO process with fellow marketers
-
Community
Discuss industry events, jobs, and news!
-
Digital Marketing
Chat about tactics outside of SEO
-
Research & Trends
Dive into research and trends in the search industry.
-
Support
Connect on product support and feature requests.
Related Questions
-
International Blog Structure & Hreflang Tags
Hi all, I'm running an international website across 5 regions using a correct hreflang setup. A problem I think I have is that my blog structure is not standardized and also uses hreflang tags for each blog article. This has naturally caused Google to index each of the pages across each region, meaning a massive amount of pages are being crawled. I know hreflang solves and issues with duplication penalties, but I have another question. If I have legacy blog articles that are considered low quality by Google, is that counting against my site once or multiple times for each time the blog is replicated across each region? I'm not sure if hreflang is something that would tell Google this. For example, if I have low quality blog posts: blog/en-us/low-quality-article-1
Intermediate & Advanced SEO | | MattBassos
blog/en-gb/low-quality-article-1
blog/en-ca/low-quality-article-1 Do you think Google is counting this as 3 low quality articles or just 1 if hreflang is correctly implemented? Any insights would be great because I'm considering to cull the international setup of the blog articles and use just /blog across each region.0 -
Alt Tags
Hi We have lots of alt tags missing, I know they'e recommended by Google, so moving forward we will ensure we add them to product images, but should we go back and update the ones we have missing? How important is it for SEO? Has anyone tested this? Thanks
Intermediate & Advanced SEO | | BeckyKey0 -
Rel Canonical for HTTP and HTTPS pages
My website has a login that has HTTPS pages. If the visitors doesn't log in they are given an HTTP page that is similar, but slightly different. Should I sure a Rel Canonical for these similar pages and how should that be set up? HTTP to HTTPS version or the other way around? Thank you, Joey
Intermediate & Advanced SEO | | JoeyGedgaud1 -
Putting Dates In Title Tag
Hi, I have a site were I write previews for sports match ups. I notice when I don't put the date in the title I rank much better for specific keywords. I also noticed that most people don't really put in the date when they do the search anyways, especially since google does a good job of showing the most recent pages anyways. The only reason I continue to put the date is because of this whole idea of not having page titles that are duplicate. So many of our games will be Team A vs Team B Preview, and Im worried that the term "preview" will become so repetitive that google may not like it. Any tips or ideas on how to approach this issue best? Thanks!
Intermediate & Advanced SEO | | tarafaraz1 -
Should I use **tags or h1/h2 tags for article titles on my homepage**
I recently had an seo consultant recommend using tags instead of h1/h2 tags for article titles on the homepage of my news website and category landing pages. I've only seen this done a handful of times on news/editorial websites. For example: http://www.muscleandfitness.com/ Can anyone weigh in on this?
Intermediate & Advanced SEO | | blankslatedumbo0 -
Should we NOINDEX NOFOLLOW canonical pages?
Hi, I was window shopping at Gemvara and noticed something interesting... They rank very high for long-tail phrases such as "rose gold engagement rings" and in their pagination pages for that category not only they filled canonical to the main category page (which is logic) but also they "NOINDEX NOFOLLOW" the pages... Is that recommended? Thanks
Intermediate & Advanced SEO | | BeytzNet0 -
Simple Pagination and Rel Canonical
Hello, I am trying to find a solid solution to this. I think it is simple, but trying to think of a good setup for SEO. If you have a paginated result set, page 1, page 2, page 3, page 4. What i am wondering is, should I point my REL CANONICAL page to Page 1 always, so i'm not loosing power from the first page? Domain structure: www.domain.com/search/[term]/page1/
Intermediate & Advanced SEO | | aactive
www.domain.com/search/[term]/page2/ Should I point all pages to page 1, so I don't get watered down as we go farther into the site? Thoughts?0 -
Rel Alternate tag and canonical tag implementation question
Hello, I have a question about the correct way to implement the canoncial and alternate tags for a site supporting multiple languages and markets. Here's our setup. We have 3 sites, each serving a specific region, and each available in 3 languages. www.example.com : serves the US, default language is English www.example.ca : serves Canada, default language is English www.example.com.mx : serves Mexico, default language is Spanish In addition, each sites can be viewed in English, French or Spanish, by adding a language specific sub-directory prefix ( /fr , /en, /es). The implementation of the alternate tag is fairly straightforward. For the homepage, on www.example.com, it would be: -MX” href=“http://www.example.com.mx/index.html” /> -MX” href=”http://www.example.com.mx/fr/index.html“ />
Intermediate & Advanced SEO | | Amiee
-MX” href=”http://www.example.com.mx/en/index.html“ />
-US” href=”http://www.example.com/fr/index.html” />
-US” href=”http://www.example.com/es/index.html“ />
-CA” href=”http://www.example.ca/fr/index.html” />
-CA” href=”http://www.example.ca/index.html” />
-CA” href=”http://www.example.ca/es/index.html” /> My question is about the implementation of the canonical tag. Currently, each domain has its own canonical tag, as follows: rel="canonical" href="http://www.example.com/index.html"> <link rel="canonical" href="http: www.example.ca="" index.html"=""></link rel="canonical" href="http:>
<link rel="canonical" href="http: www.example.com.mx="" index.html"=""></link rel="canonical" href="http:> I am now wondering is I should set the canonical tag for all my domains to: <link rel="canonical" href="http: www.example.com="" index.html"=""></link rel="canonical" href="http:> This is what seems to be suggested on this example from the Google help center. http://support.google.com/webmasters/bin/answer.py?hl=en&answer=189077 What do you think?0