 #  Another Canonical URL Demon Slain 

 

  ![Another Canonical URL Demon Slain](https://cdn.richeyweb.com/images/articles/joomlas-canonical-url-chaos/canonical-url-demon.webp)    I’ve been tearing through Joomla’s duplicate URL chaos because I’m fed up watching good sites - mine included - suffocate under unindexed pages, poisoned SERPs, and limp fixes that choke on query strings or beg for cash. My first article lit the fuse; now my [canonical URL](/blog/development/joomlas-canonical-url-chaos "Joomla’s Canonical URL Chaos") plugin’s a juggernaut, sitting at 99% as of March 24, 2025. It’s conquered com\_contact, com\_content, com\_finder, [com\_newsfeeds](/joomla-techniques/youtube-rss-feed-gallery "YouTube RSS Feed Gallery"), com\_users, com\_weblinks, even com\_k2 - but the latest demon I’ve slain is com\_tags. Digging through [Google](/white-hat-seo/curated-backlinks "Curated Backlinks") Search Console, I found a swarm of /tags/3-style URLs clogging the works. Raw IDs instead of aliases? That’s a problem begging to be crushed, and I’ve done it.

## IDs to Aliases, Chaos to Clarity

This isn’t about me forcing rules - it’s about making Joomla’s components speak true. My latest com\_tags fixer class grabs those ugly /tags/3 URLs, pulls the tag’s real alias - like /tags/joomla - from Joomla’s own RouteHelper and TagModel, and sets it as the canonical. No more ID-riddled doppelgängers confusing Google; if Search Console flags it, I fix it. Across com\_content for articles, com\_users for profiles, all the way to com\_finder for search, every core component’s locked down - plus a com\_k2 trick I swiped from another dev. This plugin doesn’t guess; it knows, and com\_tags is the latest proof.

https://www.richeyweb.com/content-tags/4 - have a look at the source, at the canonical URL. It's not /content-tags/4 - it's /content-tags/system (the canonical that Google chose, according to the Search Console).

I've had such success with this new plugin, I've deployed it on several of my own sites to get real-world data and testing from the only critics that matter - the [search engines](/blog/development/generator-tag-claim-your-joomla-sites "Generator Tag: Claim Your Joomla Sites").

## Poison Meets Its Match

SERP poisoning - where some fool twists good-url into good-url?junkparameter - gets no traction now. With com\_tags, a /tags/joomla?randomcrap won’t steal the spotlight; the plugin enforces the clean alias every time. It’s doing the same across com\_content, com\_contact, the whole core lineup - live tests on my sites show it’s airtight. That 1% left? Minor wrinkles from real-world runs. But this is a wall - bad links, bot flubs, and Search Console gremlins don’t stand a chance anymore.

## Not Just a Search Console Annoyance

Google spells out the consequences of having [duplicate content](/blog/hosting/negative-seo-via-url-parameter-abuse-in-joomla "Negative SEO via URL Parameter Abuse in Joomla"), and the importance of providing canonical URLs in the document.

<https://developers.google.com/search/docs/crawling-indexing/canonicalization>

If you have too many, it might fall under their spam policy.

<https://developers.google.com/search/docs/essentials/spam-policies>

## Free, Open, One Step From Glory

Still [free](/blog/development/new-geoip-coming-soon "New GeoIP Coming Soon"), still no gatekeepers - I’m not here to shake anyone down. At 99%, it’s got every [Joomla](/blog/hosting/cron-vs-joomla-lazy-scheduler-and-webcron "Cron vs Joomla Lazy Scheduler and WebCron") core component in its grip, plus com\_k2, and it’s running live on my sites, proving its chops. [Site owners](/blog/development/problems-turn-into-features "Problems Turn Into Features") shouldn’t need a subscription to kill [SEO](/test-article "Shader BG Test") chaos, and they don’t. It’s open too - write a fixer class like my com\_tags one, drop it in, and you’re fighting with me. I saw /tags/3 in Search Console and turned it into /tags/joomla because that’s what this is about: real problems, real fixes, for us all.

## The Last Canonical URL Mile

That 1%? It’s polish - [edge cases](/blog/development/the-humbling-art-of-free-software "The Humbling Art of Free Software") from live testing, maybe a nod to third-party stuff like VirtueMart if the community bites. But this is my Bad Wolf moment: com\_tags IDs are history, canonical chaos is flatlining, and Joomla’s URLs are damn near bulletproof from com\_content to com\_weblinks. SERPs are cleaner, site owners can breathe, and I’m not stopping until it’s 100% - forever. This fight’s personal, and I’ve all but won it - for me, for you, for Joomla.

Next stop - [System - Link Canonical](/software/joomla/plugins/system-link-canonical)



- [      email ](mailto:?subject=Another+Canonical+URL+Demon+Slain&body=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fanother-canonical-url-demon-slain)
- [      facebook ](https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fanother-canonical-url-demon-slain)
- [      x-twitter ](https://twitter.com/intent/tweet?text=Another+Canonical+URL+Demon+Slain%3A+https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fanother-canonical-url-demon-slain)
- [      linkedin ](http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fanother-canonical-url-demon-slain&title=Another+Canonical+URL+Demon+Slain&summary=I%E2%80%99ve+been+tearing+through+Joomla%E2%80%99s+duplicate+URL+c...)
- [      pinterest ](http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fwww.richeyweb.com%2Fblog%2Fdevelopment%2Fanother-canonical-url-demon-slain&media=https%3A%2F%2Fcdn.joomla.org%2Fimages%2Fjoomla-org-og.jpg&description=Another+Canonical+URL+Demon+Slain)
 


 

   [  Previous article: Canonical Chaos, Round Three: Polishing the Blade   Canonical Chaos, Round Three: Polishing the Blade ](/blog/development/canonical-chaos-round-three-polishing-the-blade) [  Next article: Joomla’s Canonical URL Chaos  Joomla’s Canonical URL Chaos  ](/blog/development/joomlas-canonical-url-chaos)  

##### We Value Your Privacy

 

We use cookies to enhance your experience and for traffic analysis. By continuing to visit this site you agree to our use of cookies.

[Privacy Policy](/privacy-policy)

 Details 

###### Google Tag Manager Items

- Ad Storage
- Ad User Data
- Ad Personalization
- Analytics Storage
- Functionality Storage
- Personalization Storage
- Security Storage
 
 

 

 

 

 

 Decline Accept
```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.richeyweb.com/#organization","name":"RicheyWeb","url":"https://www.richeyweb.com/","logo":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/logo/richeyweb.svg","contentUrl":"https://www.richeyweb.com/images/logo/richeyweb.svg","width":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":38,"unitCode":"PX"},"@id":"https://www.richeyweb.com/#logo"},"image":{"@id":"https://www.richeyweb.com/#logo"},"sameAs":["https://x.com/ComRicheyweb","https://www.facebook.com/RicheyWebDev/","https://www.youtube.com/channel/UCxnVG8BwOvQRO7hVqNX7T2g","https://community.joomla.org/service-providers-directory/listings/115:richeyweb.html"],"description":"RicheyWeb is a custom software developer specializing in Joomla extensions.","ContactPoint":[{"@type":"ContactPoint","url":"https://www.richeyweb.com/contact-us","telephone":"903-873-8460","contactType":"Owner/Administrator","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"},{"@type":"ContactPoint","url":"https://www.richeyweb.com/bugs","telephone":"903-873-8460","contactType":"Technical Support","areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"availableLanguage":"en"}],"knowsAbout":["Computer programming",{"@type":"Thing","name":"Computer programming","sameAs":["https://en.wikipedia.org/wiki/Computer_programming","https://www.wikidata.org/wiki/Q80006","https://g.co/kg/m/01mf_"]},"PHP",{"@type":"Thing","name":"PHP","sameAs":["https://en.wikipedia.org/wiki/PHP","https://www.wikidata.org/wiki/Q59","https://g.co/kg/m/060kv"]},"JavaScript",{"@type":"Thing","name":"JavaScript","sameAs":["https://en.wikipedia.org/wiki/JavaScript","https://www.wikidata.org/wiki/Q2005","https://g.co/kg/m/02p97"]},"arduino","Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"White hat",{"@type":"Thing","name":"White hat","sameAs":["https://en.wikipedia.org/wiki/White_hat_(computer_security)","https://www.wikidata.org/wiki/Q7995625","https://g.co/kg/m/03ns_5"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]},"Search engine marketing",{"@type":"Thing","name":"Search engine marketing","sameAs":["https://en.wikipedia.org/wiki/Search_engine_marketing","https://www.wikidata.org/wiki/Q846132","https://g.co/kg/m/06mw8r"]},"Digital marketing",{"@type":"Thing","name":"Digital marketing","sameAs":["https://en.wikipedia.org/wiki/Digital_marketing","https://www.wikidata.org/wiki/Q1323528","https://g.co/kg/g/122hcnps"]},"Web hosting service",{"@type":"Thing","name":"Web hosting service","sameAs":["https://en.wikipedia.org/wiki/Web_hosting_service","https://www.wikidata.org/wiki/Q5892272","https://g.co/kg/m/014pz4"]},"Email hosting service",{"@type":"Thing","name":"Email hosting service","sameAs":["https://en.wikipedia.org/wiki/Email_hosting_service","https://www.wikidata.org/wiki/Q5368818","https://g.co/kg/m/09w60m"]},"Internet hosting service",{"@type":"Thing","name":"Internet hosting service","sameAs":["https://en.wikipedia.org/wiki/Internet_hosting_service","https://www.wikidata.org/wiki/Q1210425","https://g.co/kg/m/09w5yw"]},"Virtual hosting",{"@type":"Thing","name":"Virtual hosting","sameAs":["https://en.wikipedia.org/wiki/Virtual_hosting","https://www.wikidata.org/wiki/Q588365","https://g.co/kg/m/024mvh"]},"Web performance",{"@type":"Thing","name":"Web performance","sameAs":["https://en.wikipedia.org/wiki/Web_performance","https://www.wikidata.org/wiki/Q7978612","https://g.co/kg/m/0gfj3f1"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"General Data Protection Regulation",{"@type":"Thing","name":"General Data Protection Regulation","sameAs":["https://en.wikipedia.org/wiki/General_Data_Protection_Regulation","https://www.wikidata.org/wiki/Q1172506","https://g.co/kg/m/0pk_7xs"]},"SERP",{"@type":"Thing","name":"SERP","sameAs":["https://en.wikipedia.org/wiki/SERP","https://www.wikidata.org/wiki/Q2205811","https://g.co/kg/g/11c5szp7kc"]},"Artificial intelligence",{"@type":"Thing","name":"Artificial intelligence","sameAs":["https://en.wikipedia.org/wiki/Artificial_intelligence","https://www.wikidata.org/wiki/Q11660","https://g.co/kg/m/0mkz"]},"Prompt engineering",{"@type":"Thing","name":"Prompt engineering","sameAs":["https://en.wikipedia.org/wiki/Prompt_engineering","https://www.wikidata.org/wiki/Q108941486","https://g.co/kg/g/11p6kpgt_n"]},"E-learning",{"@type":"Thing","name":"E-learning","sameAs":["https://en.wikipedia.org/wiki/E-learning_(theory)","https://www.wikidata.org/wiki/Q182250","https://g.co/kg/g/122czm1f"]},"Sharable Content Object Reference Model",{"@type":"Thing","name":"Sharable Content Object Reference Model","sameAs":["https://en.wikipedia.org/wiki/Sharable_Content_Object_Reference_Model","https://www.wikidata.org/wiki/Q827811","https://g.co/kg/m/06_40"]},"Experience API",{"@type":"Thing","name":"Experience API","sameAs":["https://en.wikipedia.org/wiki/Experience_API","https://www.wikidata.org/wiki/Q7807728","https://g.co/kg/g/1yw9ktxr8"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Nginx",{"@type":"Thing","name":"Nginx","sameAs":["https://en.wikipedia.org/wiki/Nginx","https://www.wikidata.org/wiki/Q306144","https://g.co/kg/m/02qft91"]},"MySQL",{"@type":"Thing","name":"MySQL","sameAs":["https://en.wikipedia.org/wiki/MySQL","https://www.wikidata.org/wiki/Q850","https://g.co/kg/m/04y3k"]}],"areaServed":["United States",{"@type":"Country","name":"United States","sameAs":["https://en.wikipedia.org/wiki/United_States","https://www.wikidata.org/wiki/Q30","https://g.co/kg/m/09c7w0"]},"European Union",{"@type":"AdministrativeArea","name":"European Union","sameAs":["https://en.wikipedia.org/wiki/European_Union","https://www.wikidata.org/wiki/Q458","https://g.co/kg/m/0_6t_z8"]},"United Kingdom",{"@type":"Country","name":"United Kingdom","sameAs":["https://en.wikipedia.org/wiki/United_Kingdom","https://www.wikidata.org/wiki/Q145","https://g.co/kg/m/07ssc"]},"Australia",{"@type":"Country","name":"Australia","sameAs":["https://en.wikipedia.org/wiki/Australia","https://www.wikidata.org/wiki/Q408","https://g.co/kg/m/0chghy"]},"Canada",{"@type":"Country","name":"Canada","sameAs":["https://en.wikipedia.org/wiki/Canada","https://www.wikidata.org/wiki/Q16","https://g.co/kg/m/0d060g"]},"Russia",{"@type":"Country","name":"Russia","sameAs":["https://en.wikipedia.org/wiki/Russia","https://www.wikidata.org/wiki/Q159","https://g.co/kg/m/06bnz"]},"China",{"@type":"Country","name":"China","sameAs":["https://en.wikipedia.org/wiki/China","https://www.wikidata.org/wiki/Q148","https://g.co/kg/m/0d05w3"]}],"memberOf":["Mensa International",{"@type":"Organization","name":"Mensa International","sameAs":["https://en.wikipedia.org/wiki/Mensa_International","https://www.wikidata.org/wiki/Q184194","https://g.co/kg/m/0140pf"]},"National Rifle Association",{"@type":"Organization","name":"National Rifle Association","sameAs":["https://en.wikipedia.org/wiki/National_Rifle_Association","https://www.wikidata.org/wiki/Q863259","https://g.co/kg/m/0j6f9"]},"CompTIA",{"@type":"Organization","name":"CompTIA","sameAs":["https://en.wikipedia.org/wiki/CompTIA","https://www.wikidata.org/wiki/Q597534","https://g.co/kg/m/040shq"]},"ISFCE LLC",{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://isfce.com","https://g.co/kg/g/11wxm5r0rg"]}],"hasCredential":[{"@type":"EducationalOccupationalCredential","name":"Joomla 3 Certified Administrator","credentialCategory":"Certification","description":"Administrator Exam is the first available Joomla! certification exam","recognizedBy":{"@type":"Organization","name":"Open Source Matters, Inc.","sameAs":["https://en.wikipedia.org/wiki/Open_Source_Matters,_Inc.","https://g.co/kg/g/11f00wvjhz"]},"url":"https://certification.joomla.org/certified-user-directory/michael-richey","about":["Content management system",{"@type":"Thing","name":"Content management system","sameAs":["https://en.wikipedia.org/wiki/Content_management_system","https://www.wikidata.org/wiki/Q131093","https://g.co/kg/m/0k23c"]},"Web content management system",{"@type":"Thing","name":"Web content management system","sameAs":["https://en.wikipedia.org/wiki/Web_content_management_system","https://www.wikidata.org/wiki/Q45211","https://g.co/kg/m/0615s2"]},"Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/badge.webp","contentUrl":"https://www.richeyweb.com/images/contact/badge.webp","width":{"@type":"QuantitativeValue","value":300,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":86,"unitCode":"PX"},"caption":"Joomla 3 Certified Administrator"}},{"@type":"EducationalOccupationalCredential","name":"Certified Computer Examiner","credentialCategory":"Certification","description":"Internationally recognized computer forensics certifiecation","recognizedBy":{"@type":"Organization","name":"ISFCE LLC","sameAs":["https://en.wikipedia.org/wiki/ISFCE_LLC","https://g.co/kg/g/11wxm5r0rg"]},"url":"https://isfce.com/","about":["Digital forensics",{"@type":"Thing","name":"Digital forensics","sameAs":["https://en.wikipedia.org/wiki/Digital_forensics","https://www.wikidata.org/wiki/Q3246940","https://g.co/kg/m/0cnxzfx"]},"Computer forensics",{"@type":"Thing","name":"Computer forensics","sameAs":["https://en.wikipedia.org/wiki/Computer_forensics","https://www.wikidata.org/wiki/Q878553","https://g.co/kg/m/02wxbd"]},"Mobile device forensics",{"@type":"Thing","name":"Mobile device forensics","sameAs":["https://en.wikipedia.org/wiki/Mobile_device_forensics","https://www.wikidata.org/wiki/Q6887097","https://g.co/kg/m/06zp3tp"]},"Network forensics",{"@type":"Thing","name":"Network forensics","sameAs":["https://en.wikipedia.org/wiki/Network_forensics","https://www.wikidata.org/wiki/Q7001032","https://g.co/kg/m/05pb280"]},"Database forensics",{"@type":"Thing","name":"Database forensics","sameAs":["https://en.wikipedia.org/wiki/Database_forensics","https://www.wikidata.org/wiki/Q5227405","https://g.co/kg/m/0cgqsy"]}],"educationalLevel":"expert","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/contact/isfce-cce.webp","contentUrl":"https://www.richeyweb.com/images/contact/isfce-cce.webp","width":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":150,"unitCode":"PX"},"caption":"Certified Computer Examiner"}}],"hasOfferCatalog":{"@type":"OfferCatalog","name":"Web Services","itemListElement":[{"@type":"Offer","itemOffered":{"@type":"Service","name":"Hosting"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Development"}},{"@type":"Offer","itemOffered":{"@type":"Service","name":"Search Engine Optimization"}}]}},{"@type":"WebSite","@id":"https://www.richeyweb.com/#website","url":"https://www.richeyweb.com/","name":"RicheyWeb","publisher":{"@id":"https://www.richeyweb.com/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.richeyweb.com/search?q={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string","valueMaxLength":256,"valueMinLength":2,"valuePattern":"^[A-Za-z0-9\\s]+$"}},"creator":{"@id":"https://www.richeyweb.com/#organization"},"copyrightHolder":{"@id":"https://www.richeyweb.com/#organization"}},{"@type":"WebPage","@id":"https://www.richeyweb.com/blog/development/another-canonical-url-demon-slain#webpage","url":"https://www.richeyweb.com/blog/development/another-canonical-url-demon-slain","name":"Another Canonical URL Demon Slain","description":"Slaying Joomla’s canonical URL chaos: com_tags IDs fixed, 99% core coverage, free plugin battles SERP poison—nearly won as of Mar 24, 2025.","isPartOf":{"@id":"https://www.richeyweb.com/#website"},"about":{"@id":"https://www.richeyweb.com/#organization"},"inLanguage":"en-GB"},{"@type":"Article","image":{"@type":"ImageObject","url":"https://www.richeyweb.com/images/articles/joomlas-canonical-url-chaos/canonical-url-demon.webp","contentUrl":"https://www.richeyweb.com/images/articles/joomlas-canonical-url-chaos/canonical-url-demon.webp","width":{"@type":"QuantitativeValue","value":519,"unitCode":"PX"},"height":{"@type":"QuantitativeValue","value":291,"unitCode":"PX"},"caption":"Another Canonical URL Demon Slain","representativeOfPage":true},"headline":"Another Canonical URL Demon Slain","description":"Slaying Joomla’s canonical URL chaos: com_tags IDs fixed, 99% core coverage, free plugin battles SERP poison—nearly won as of Mar 24, 2025.","author":{"@type":"Person","name":"Michael Richey","url":"https://www.richeyweb.com/contact-us","@id":"https://www.richeyweb.com/contact-us#person"},"datePublished":"2025-03-24T00:00:00+00:00","dateModified":"2026-03-30T00:00:00+00:00","about":["Joomla",{"@type":"Thing","name":"Joomla","sameAs":["https://en.wikipedia.org/wiki/Joomla","https://www.wikidata.org/wiki/Q13167","https://g.co/kg/m/07qb81"]},"Plug-in",{"@type":"Thing","name":"Plug-in","sameAs":["https://en.wikipedia.org/wiki/Plug-in_(computing)","https://www.wikidata.org/wiki/Q3906765","https://g.co/kg/m/05x35"]},"Canonical link element",{"@type":"Thing","name":"Canonical link element","sameAs":["https://en.wikipedia.org/wiki/Canonical_link_element","https://www.wikidata.org/wiki/Q1033568","https://g.co/kg/m/0ds6c_h"]},"Google Search Console",{"@type":"WebSite","name":"Google Search Console","sameAs":["https://en.wikipedia.org/wiki/Google_Search_Console","https://www.wikidata.org/wiki/Q328216","https://g.co/kg/m/05h5pjx"]},"Search engine optimization",{"@type":"Thing","name":"Search engine optimization","sameAs":["https://en.wikipedia.org/wiki/Search_engine_optimization","https://www.wikidata.org/wiki/Q180711","https://g.co/kg/m/019qb_"]}],"mentions":["Google",{"@type":"Organization","name":"Google","sameAs":["https://en.wikipedia.org/wiki/Google","https://www.wikidata.org/wiki/Q95","https://g.co/kg/m/045c7b"]},"VirtueMart",{"@type":"Thing","name":"VirtueMart","sameAs":["https://en.wikipedia.org/wiki/VirtueMart","https://www.wikidata.org/wiki/Q579005","https://g.co/kg/m/0d_gvh"]},"Search engine",{"@type":"Thing","name":"Search engine","sameAs":["https://en.wikipedia.org/wiki/Search_engine_(computing)","https://www.wikidata.org/wiki/Q4182287","https://g.co/kg/g/121mdwnt"]},"Canonical link element",{"@type":"Thing","name":"Canonical link element","sameAs":["https://en.wikipedia.org/wiki/Canonical_link_element","https://www.wikidata.org/wiki/Q1033568","https://g.co/kg/m/0ds6c_h"]},"Canonical link",{"@type":"Thing","name":"Canonical link","sameAs":["https://en.wikipedia.org/wiki/Canonical_link","https://www.wikidata.org/wiki/Q27796490","https://g.co/kg/g/11c5t1jvl2"]},"Duplicate content",{"@type":"Thing","name":"Duplicate content","sameAs":["https://en.wikipedia.org/wiki/Duplicate_content","https://www.wikidata.org/wiki/Q1129516","https://g.co/kg/m/055z3qr"]}],"@id":"https://www.richeyweb.com/blog/development/another-canonical-url-demon-slain#article","isPartOf":{"@id":"https://www.richeyweb.com/blog/development/another-canonical-url-demon-slain#webpage"},"publisher":{"@id":"https://www.richeyweb.com/#organization"},"keywords":"Joomla, duplicate URLs, URL chaos, uninindexed pages, poisoned SERPs, limp fixes, query strings, canonical URL, canonical URL plugin, com_contact, com_content, com_finder, com_newsfeeds, com_users, com_weblinks, com_k2, com_tags, /tags/3 URLs, Raw IDs, aliases, Google Search Console, Search Console, dopplegängers, Google, core component, live tests, real-world data, search engines, SERP poisoning, good-url, junk parameter, clean alias, SEO chaos, duplicate content, canonical URLs, spam policy, free, open, fixer class, VirtueMart, Bad Wolf moment, canonical chaos, Joomla URLs, bullerproof, cleaner SERPs, site owners, SEO, Google developers, crawling, indexing, canonicaization, spam policies, one step, real fixes, Joomla core components, VirtueMart, live testing, edge cases, third-party stuff, forever, personal, won","articleSection":"Development","url":"https://www.richeyweb.com/blog/development/another-canonical-url-demon-slain"}]}
```
