How to Add Canonical Urls to WordPress Blogs

It is very essential to add canonical URLs to every WordPress blog web page to avoid duplicate content penalties by search engines. Canonical URLs represent the permalink of the page and help search engines identify and index the page, ignoring other parameters or mistyped URLs loading similar content.

Add Canonical URLs Easily

target canonical url1. WordPress AutoInsert

The latest versions of WordPress automatically adds the canonical URL to the posts and pages only, but not to archives, tags, categories, etc. So while for most blogs, it takes care of all your single posts and pages, it does not fix canonical URL issues for your archives and other paginated categories/tags.

2. SEO WordPress plugins

Popular SEO WordPress plugins like All in One SEO or Yoast SEO have options to set canonical URLs on all your blog pages and are the best way to add canonical URLs in on click.

canonical urls by plugins

3. Premium WordPress Theme Frameworks

Some advanced theme frameworks like Thesis and Genesis have SEO options that allow the auto setting of canonical URLs, without the use of above SEO plugins. However, they are paid WordPress themes, and most WordPress themes might not have options to set canonical URLs automatically.

4. Manual Code Addition

If for some reason you wish to add canonical URLs to all your single posts and pages manually, you can add the following code in the HEAD tags of your HTML code by editing header.php

<?php if (is_singular()) { ?>
<link rel="canonical" href="<?php the_permalink() ?>" />
<?php } ?>

Similarly, if you want to add code manually to any page, you can simply add the canonical URL on the page in the HEAD tags. For example, we have a problem using SEO plugins because we host WordPress in an alternative directory and the SEO plugins cannot create the correct URL for the front page. So we directly add our main front page canonical URL through a separate index.php file.