Comprehensive SEO solution for canonical links

Canonical Links All in One


Do you care about SEO? Are you tired of being penalized by Google for having a duplicate content? Install Canonical Links All in One and you'll get the following features:

Joomla support

  • Article view
  • Category view
  • Category list view
  • Featured view
  • Tag view
  • Archive view
  • Pagination series
  • Fixes invalid canonicals from native J3

K2 support

  • Item view
  • Category/Itemlist view
  • Tag view
  • User view
  • Latest view
  • Pagination series

VirtueMart 3 support

  • Based on native VM 3 support
  • Fixes double canonicals in Joomla 3 with VM 3
  • Adds missing domain name to canonicals per Google recommendation

EasyBlog 5 support

  • Based on native EasyBlog 5 support
  • Extra pagination canonicals
  • Adds missing domain name to canonicals per Google recommendation

Also included

  • In Top 10 SEO & Metadata Extensions
  • Free download
  • Automatic updates
  • Permanent redirection option
  • Canonical domain option
  • Override canonical links
  • Remove specific canonical links
  • No support
  • Compatible with Joomla 2.5/3.x
  • PHP 5.3+, PHP 7 recommended
  • Unlimited use (GNU/GPL licence)


Joomla 3 canonicals are often incorrectly generated, and Joomla 2.5 does not output canonical links at all, which can result in many duplicate pages for your content. Other extensions solved this problem only partially or incorrectly. We applied our long experience with Joomla to create Canonical Links All in One, a comprehensive solution to rule them all!

Here is a parctical example of the problem: there is an article on the Joomla website However, exactly the same article can be viewed at url like this: This could happen if for some reason you renamed the article. Or it can be viewed at: This could happen if you moved the article to another category. The problem is that Google can index this article in all three versions of the link, and since they all exist, it can consider it a duplicate content, and degrade it in the search results. This is the problem that the extension corrects - no matter which of these three links you open, it would insert the same canonical link in the code of the article, it would looks like this: <link href="/" rel="canonical">. This code says to the search engine "the original content can be found at this address, please use only this one for indexing".

If you change alias of an article, or if you can reach it in many ways, we've got you covered, Google won't penalize you.

With full support for native content and K2/VM 3/EasyBlog 5 pages, we also set canonicals for paginated series, so that Google can index properly your categories with more than one page.

You can also choose to automatically redirect users to your canonical page. We tweaked our plugin so that the most appropriate link is chosen, based on the structure of your menus.

If your website can be accessed with multiple domain names, you can set your preferred domain for the canonical links in options.

And if you need special tweaks for some pages, you can also override automatically generated canonical links for specific pages, or completely remove canonical links from them!

Backend options:


options k2

3.47 (2020/07/05)

* If an article is directly linked in multiple menus, make sure to always use the same one for the canonical link
+ Make sure the plugin is also compatible with PHP 5.3 and 5.4
* Minor changes

3.46 (2019/02/01)

* Virtuemart inner pagination pages should not be redirected

3.45 (2019/01/07)

+ Support for Joomla tags
* Overriden canonicals not always correct

3.44 (2018/04/25)

* Joomla 3.8.7 introduced a bug that could result in an endless redirection for some category links, under specific cirmustances. Fix the issue internally until layout in links is properly factored into account in Joomla.

3.43 (2018/04/20)

* Joomla older than 3.8.2 could show a warning when sh404sef not installed

3.42 (2018/04/07)

+ Improved compatibility with sh404sef
* EasyBlog: warning on PHP 7.1 with pagination

3.41 (2017/12/13)

* K2: Some systems do not detected properly if tag is filtered
* K2: Some systems require to check against urldecoded tag as well when searching for the tag menu
* Virtuemart: Check if homepage should have a .html suffix or not
* Alternative domain adjustment

3.40 (2017/03/20)

* K2: Check if menu has a different language than default

3.39 (2017/02/13)

* Joomla 2.5: properly detect whether url rewriting is enabled

3.38 (2017/01/25)

* When url rewriting is disabled (/index.php/ shows in all links), canonical link may not be correct

3.37 (2017/01/23)

* Permanent redirect issue introduced in 3.36 few hours ago

3.36 (2017/01/23)

+ Option to ignore specific query variables (advanced)
* K2: Set canonical for itemlist view where there is no ID set (rare)

3.35 (2016/11/23)

* Properly encode canonical link for K2 tags with spaces

3.34 (2016/10/25)

* Make sure canonical link is also set for links like

3.33 (2016/08/23)

+ Enable wildcard support for removing canonical links
* Encode canonical link parts, improvement for links with utf-8 characters

3.32 (2016/07/30)

* EasyBlog pagination check fail

3.31 (2016/07/29)

+ Override canonicals
+ Remove canonicals
* Joomla 2.5: Multilanguage homepage not always detected

3.30 (2016/06/22)

* EasyBlog pagination link corrected

3.29 (2016/06/22)

+ EasyBlog 5 support added

3.28 (2016/05/02)

+ One click updates using native Joomla interface

3.27 (2016/03/12)

+ Option to enable/disable redirection between slashed and non-slashed page
* K2: Do not redirect ChronoForms for K2

3.26 (2016/03/02)

* Virtuemart: enable redirection possibility for productdetails, category, manufacturer and virtuemart views

3.25 (2016/02/28)

* Potential infinite redirect loop for the homepage

3.24 (2016/02/27)

* Differentiate links with and without a trailing slash
+ K2: Enable ChronoForms support in item view

3.23 (2016/02/15)

* Joomla: Tweaked canonical link for Categories List View

3.22 (2016/02/10)

* Full PHP 7 support
* K2: Canonical for tag with own menu would sometimes be incorrect
* Virtuemart: Canonical tag was missing for virtuemart layout

3.21 (2016/01/30)

+ K2: Added support for 'latest' view

3.20 (2015/12/14)

+ Option to remove trailing slash from canonical links
+ Option to remove canonical link when on canonical page
* Don't execute the plugin if component option was overriden via POST

3.19 (2015/08/09)

* remove possible notice in error log (no negative influence otherwise)

3.18 (2015/08/03)

* make sure the plugin is activated only for html views, and not for json etc

3.17 (2015/07/31)

* fix compatility between date filtering from K2 tools module and permanent redirect

3.16 (2015/06/26)

+ Added full support with pagination for User view in K2
* Fixed a potential issue with redirection and query ignore parameter

3.15 (2015/06/19)

* do not redirect non-sef urls with raw output

3.14 (2015/06/16)

+ Added an option to ignore query in url's for permanent redirection

3.13 (2015/05/14)

+ K2: added support for itemllist view filtered by date using K2 Tools

3.12 (2015/05/11)

* Fixed an issue when conflicting category options are selected in menu parameters for featured view layout

3.11 (2015/05/07)

* Improved redirection mechanism

3.10 (2015/05/05)

* Improved compatibility with JotCache and System Language Filter plugin

3.9 (2015/04/16)

* Improved compatibility with third party extensions

3.8 (2015/03/26)

* Improved compatibility with Language filter system plugin

3.7 (2015/02/08)

+ Added support for paginated Joomla articles

3.6 (2015/01/28)

* Fixed K2 items canonical link

3.5 (2015/01/21)

* Improve canonical link for tag pages with filtered categories

3.4 (2015/01/06)

* Improved canonical/redirection for article menus

3.3 (2014/10/15)

+ added support for VM 3

3.2 (2014/08/19)

+ added parameter to set alternative domain

3.1 (2014/07/04)

+ added option for permanent redirection

3.0 (2014/04/03)

+ added support for K2