Only One Canonical URL Tag
-
HI, I'm an SEO novice - company owner with no money so doing it all myself with help from my web designer using wordpress. Ive just completed some seo and done the moz page scoring analysis for optimisation and gained 92% - however - there is one outstanding issue on canonical url tags - i.e.
recommened fix = The canonical URL tag is intended to refer duplicate pages to a single canonical URL. To ensure the search engines properly parse the canonical source, your page should use only one version of this tag in the header. See Canonical URL Tag - the Most Important Advancement in SEO Practices Since Sitemaps
Ive gone through the page code and can see I have 2 rel=canonical references - am I able to simply delete one - how do I do this if its been created by the yoast/wordpress plug-in?
Many thanks in advance for any help!
-
Smart move. Let me know if I can be of any more help then does this answer your question?
-
hi thomas, yes - we are keeping the yoast plug-in but switching the rss feed plug-in to a different one that will enable us to switch off the canonical ref.
-
You have an RSS feed that is adding a canonical to your own site?
RSS normally can add canonical's to third-party sites I don't think that the issue is Yoast I believe it is with the RSS post importer.
this is the second best SEO plugin you can use
https://wordpress.org/plugins/all-in-one-seo-pack/
every decent word press seo plugin will add canonical's you can choose to turn off canonical's on Yoast however I would do this using the RSS post importer
In case your are using WordPress SEO plugin, you’ll have to add a filter in the functions.php file just before the closing of PHP as shown in the screenshot below.
See
http://i.imgur.com/cr7IU4W.jpg
Here is the exact code:
add_filter( 'wpseo_canonical', '__return_false' );
It will disable canonical tags across the site and no page, no post and no archive will show this tag. But if you want to disable tagging function on certain posts, pages or category archives, you’ll have to use this code instead of the code mentioned above.
function wpseo_canonical_exclude( $canonical ) {global $post;if (is_single( '348' )) {$canonical = false;}return $canonical;}
As you know every post, page, category or any another archive has its own unique ID in the wordpress. So in the above example we used 348 which is the post ID for a specific post where the canonical tag will not show. If you don’t know how to find the ID, here is a good article for you. To hide this tag from multiple posts, use this code.
function wpseo_canonical_exclude( $canonical ) {global $post;is_single( array( 17, 19, 1, 11 ) ) {$canonical = false;}return $canonical;}
I still strongly recommend that you keep the canonical on via plug-in and not via RSS there are too many things that it could miss and cause problems for you.
I hope this helps,
Tom
-
HI Tom, thankyou very much for your help and information on this. We have now investigated where the second canonical url was coming from and we found that the plugin we use to import the daily feed (RRS Post Importer) is also adding in it’s own canonical URL (as well as the yoast seo). We are now going to look at switching in a different plug-in for this which will give us functionality to delete the rel-canonical reference, as the one we have doesn't enable you to do this.
Again, thanks for your help.
Kind regards
Matthew
-
here is a CSV file showing the pages with more than one canonical you must make it so there's only one canonical per a page
here is the CSV
Bigger photo http://i.imgur.com/cqcTN0h.png
<colgroup><col width="420"> <col width="184"> <col span="3" width="87"> <col width="199"> <col width="304"> <col span="3" width="87"></colgroup>
| Directives - Canonical | | | | | | | | | |
| Address | Occurrences | Meta Robots 1 | X-Robots-Tag 1 | Meta Refresh 1 | Canonical Link Element 1 | Canonical Link Element 2 | HTTP Canonical | rel=“next†| rel=“prev†|
| http://www.completetenders.com/services/bid-management/ | 3 | noodp | | | http://www.completetenders.com/services/bid-management/ | http://www.completetenders.com/services/bid-management/ | | | |
| http://www.completetenders.com/ | 2 | noodp | | | http://www.completetenders.com/ | | | | |
| http://www.completetenders.com/services/tendering-process/ | 3 | noodp | | | http://www.completetenders.com/services/tendering-process/ | http://www.completetenders.com/services/tendering-process/ | | | |
| http://www.completetenders.com/services/tender-writing/ | 3 | noodp | | | http://www.completetenders.com/services/tender-writing/ | http://www.completetenders.com/services/tender-writing/ | | | |
| http://www.completetenders.com/open-tenders/ | 2 | noodp | | | http://www.completetenders.com/open-tenders/ | | | | |all the best,
Tom
-
I just checked the URL you referenced you have duplicate canonical tags I checked it using screamingfrog.co.uk/seo-spider/
please look at the data below.
You need to remove one of them you should only have one.
so instead of this
- Canonical Link Element 1 http://www.completetenders.com/services/bid-management/
- Canonical Link Element 2 http://www.completetenders.com/services/bid-management/
you get
- Canonical Link Element 1 http://www.completetenders.com/services/bid-management/
See
URL Encoded Address http://www.completetenders.com/services/bid-management/
Content text/html; charset=UTF-8
Status Code 200
Status OK
Size 150645
Title 1 Bid Management / End-to-end Tendering Support
Meta Description 1 Professional Bid Management Consultants / Bid Solutions to Win Contracts / Everything You Need / Expert Advice on 07429 191305
H1-1 Bid Management
H2-1 Bid Management
H2-2 View More
Meta Robots 1 noodp
Canonical Link Element 1 http://www.completetenders.com/services/bid-management/
Canonical Link Element 2 http://www.completetenders.com/services/bid-management/
Word Count 723
Level 0
Inlinks 14
Outlinks 23 -
Look at your source code on these pages use command-F (on Mac) or control F (on PC) to search for the term "canonical" if you do not see it more than once on the page it should be no issue.
"the only difference I can see is the first one uses '...' and the second one uses "..."
The canonical link? If there are two canonical bags on the same page make sure to remove the one that is not pointing to your preferred page or make sure the canonical is self-referencing. But make certain there are no more than one canonical tag like this below
Look for
Also, I would use
- https://www.deepcrawl.com/ allowing free site crawls right now
- and/or
- https://www.screamingfrog.co.uk/seo-spider/ free up to 500 pages.
Just to confirm you do not have duplicate canonical's both tools will let you know for sure is will checking the source code of the page that is flagged. if it does not have duplicates I would report it to The Moz they are awesome at getting back to you and answering these types of issues if there is in fact only one canonical per a page.
I hope that helps,
Tom
-
Hi Gents, thanks for your replies.
Tom - Ive looked in detail at both the canonical references in the header on my page at they both look the same -
Line 23 -
href='http://www.completetenders.com/services/bid-management/' />
Line 133 –
href="http://www.completetenders.com/services/bid-management/" />
the only difference I can see is the first one uses '...' and the second one uses "..."
can you confirm if I should amend this in yoast or whether this is something that only moz is picking up as two different canonicals?
-
you are correct you should only have one canonical tag on a page Max
Because you're using WordPress Yoast SEO plug-in I can tell you that it automatically adds canonical URL for you when you are modifying thing that should be pointing somewhere else you have to go into the advanced area in the photo below.
So all of these URLs would show the same content:
- http://example.com/wordpress/seo-plugin/ you would want to point them all to the first URL via canonical
- http://example.com/wordpress/seo-plugin/?isnt=it-awesome
- http://example.com/wordpress/seo-plugin/?cmpgn=twitter
- http://example.com/wordpress/seo-plugin/?cmpgn=facebook
for more information on how to use that plug-in and remember only one per page and if the page is duplicate content pointed to the page that you want Google to assume is the owner of that content.
If you get stuck ask me or reference this below.
https://yoast.com/rel-canonical/
All the best,
Tom
-
Hi,
You could, but I would try to find out where the other one is coming from. Basically the second rel canonical tag will overwrite the first in most cases. So trying to find out how you delete one with keeping the right one would make most sense. You're at least on the right path!
Martijn.
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
-
Duplicate Content & Title Tag Group Fields on MoZ Report
Hello, On my SEO MOZ exported Site Crawl CSV report, I have columns for Duplicate Content Group & for Duplicate Title Tag Group. The values in the columns are numerical - 20, 5 , 15, etc. Can anyone explain to me what these values represent and how I can fix the issues I presume they represent? Thank you,
Moz Bar | | AED-1
Scott0 -
I get this on every product, but i have put the keyword in the H1 tag makes now sense
Why it's an issue:Although using targeted keywords in H1 tags on your page does not directly correlate to high rankings, it does appear to provide some slight value. It's also considered a best practice for accessibility and helps potential visitors determine your page's content, so we recommend it. Over-using keywords, however, can be perceived as keyword stuffing (a form of search engine spam) and can negatively impact rankings, so use keywords in H1 tags two or fewer times. To adhere to best practices in Google News and Bing News, headlines should contain the relevant keyword target and be treated with the same importance as title tags
Moz Bar | | Carlsimp0 -
How Can I Batch Upload URLs to get PA for many pages?
Howdy folks, I'm using advanced search operators to generate lists of long tail queries related to my niche and I'd like to take the batch of URLs I've gathered and upload them in a batch so I can see what the PA is for each URL. This would help me determine which long tail query is receiving the most love and links and help inform my content strategy moving forward. But I can't seem to find a way to do this. I went to check out the Moz API but it's a little confusing. It says there's a free version, but then it looks like it's actually not free, then I try to use it and it says I've gone over my limit even though I haven't used it yet. Anyone that can help me with this, I'd really appreciate it. If you're familiar with SEMRush, they have a batch analysis tool that works well, but I ideally want to upload these URLs to Moz because it's better for this kind of research. Thanks!
Moz Bar | | brettmandoes2 -
On Page Grader - URL not accessible
We have tried to use the On Page Grader today and it is coming back with URL not accessible for all pages on our website. We previously used the On Page Grader on Friday 10th Nov for a couple of product pages with no issues. Since then, the only changes we have made on the websites is updating some downloadable documents. We have done this several times before and it has never affected Moz. We have not changed the page URLs, and therefore do not know why it is now not working. The pages are working fine on the website with no issues. A link to one of the pages is below. http://www.processinstruments.co.uk/products/dissolved-oxygen-monitor/ Any help would be greatly appreciated.
Moz Bar | | PiMike0 -
4XX client error with email address in URL
I have an unusual situation I have never seen before and I did not set up the server for this client. The 4XX error is a string of about 74 URLs similar to this: http://www.websitename.com/about-us/[email protected] I will be contacting the server host as well to troubleshoot this issue. Any ideas? Thanks
Moz Bar | | EliteVenu0 -
How do you block keywords in On-Page Grader for certain URLs?
For the on-page grader, I rank A's for 9 keywords. I struggle with F's I have because it is searching keywords on pages that are not supposed to be searched. For example, I have a "bracelets" page, so I didn't optimize it for "rings", so I got an F. However, it graded me an A for the bracelets keyword, which is great. To be sure I am correct, each page should have it's own keyword, such as bracelet. So why is the grader checking my "Bracelets" page for "Rings"? Maybe there is something I am missing. Just trying to see why this happening.
Moz Bar | | tiffany11030 -
Who and how does one get in Fresh Alerts?
Who and how does one get in Fresh Alerts? This is such a great tool! Thank, Moz! I would like to use this more often and to a better advantage. Can someone help me understand what criteria the tool uses to choose who it and what it picks up? Why would someone's personal family gathering turn up in my Moz Fresh Alerts("Minneapolis home buyers"? http://mydesultoryblog.com/2014/07/having-a-great-time-with-katelyn-and-drew-in-wayzata-mn/ My Desultory Blog Desultory thoughts on a variety of subjects … Having a great time with Katelyn and Drew in Wayzata, MN It seems completely random when and which of my blog posts show up in Moz Fresh Alerts. For example one that did ("Minneapolis real estate sellers"): "5 Critical Shifts in the Twin Cities Housing Market" http://www.homedestination.com/real-estate-blog/4-critical-shifts-in-the-twin-cities-housing-market Jeannie
Moz Bar | | jessential0 -
Ajax #! URL support?
Hi Moz, My site is currently following the convention outlined here: https://support.google.com/webmasters/answer/174992?hl=en Basically since pages are generated via Ajax we are setup to direct bots that replace the #! in a url with ?escaped_fragment to cached versions of the ajax generated content. For example, if the bot sees this url: http://www.discoverymap.com/#!/California/Map-of-Carmel/73 it will replace it will instead access the page: http://www.discoverymap.com/?escaped_fragment=/California/Map-of-Carmel/73 In which case my server serves the cached html instead of the live page. This is all per Googles direction and is indexing fine. However the MOZ bot does not do this. It seems like a fairly straight-forward feature to support. Rather than ignoring the hash, you look to see if it is a #! and then try to spider the url replaced with ?escaped_fragment. Our server does the rest. If this is something MOZ plans on supporting in the future I would love to know. If there is other information that would be great. Also, pushstate is not practical for everyone due to limited browser support, etc. Thanks, Dustin Updates: I am editing my question because it won't let me respond to my own question. It says I need to sign up for MOZ analytics. I was signed up for Moz Analytics?! Now I am not? I responded to my invitation weeks ago? Anyway, you are misunderstanding how this process works. There is no site-map involved. The bot reads this URL on the page: http://www.discoverymap.com/#!/California/Map-of-Carmel/73 And when it is ready to spider the page for content it, it spider's this URL instead: http://www.discoverymap.com/?escaped_fragment=/California/Map-of-Carmel/73 The server does the rest, it is simply telling Roger to recognize the #! format and replace it with ?escaped_fragment Though I obviously do not know how Roger is coded but it is a simple string replacement. Thanks.
Moz Bar | | oneactlife0