{
  "version": "1.0",
  "schema": "https://entitymap.org/spec/v1.0",
  "profile": "core",
  "publisher": {
    "name": "CanonicalTag.com",
    "url": "https://www.canonicaltag.com/"
  },
  "generated": "2026-07-24T00:00:00Z",
  "verificationStatus": "self-declared",
  "entities": [
    {
      "entityId": "e_duplicate_without_user_selected_canonical",
      "@type": "Concept",
      "name": "Duplicate Without User-Selected Canonical",
      "description": "The Search Console status that appears when Google finds a duplicate page but you haven't declared a canonical, so Google chooses one for you.",
      "hasChunks": [
        {
          "chunkId": "c_duplicate-without-user-selected-canonical",
          "text": "\"Duplicate without user-selected canonical\" is a status inside the Page indexing report in Google Search Console (the report Google renamed from \"Index Coverage\" around mid-2022, when the \"Coverage\" navigation item became \"Pages\" under Indexing).",
          "sourceUrl": "https://www.canonicaltag.com/duplicate-without-user-selected-canonical/",
          "pageTitle": "Duplicate Without User-Selected Canonical | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Duplicate Without User-Selected Canonical",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Google Search Console Statuses"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Google Search Console",
          "targetId": "e_google_search_console",
          "targetUri": "https://en.wikipedia.org/wiki/Google_Search_Console",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Duplicate content",
          "targetId": "e_duplicate_content",
          "targetUri": "https://en.wikipedia.org/wiki/Duplicate_content",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_wordpress",
      "@type": "Concept",
      "name": "Canonical Tags in WordPress",
      "description": "How WordPress core handles canonicals on singular content, what it leaves out, and how to add or override them with or without a plugin.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-wordpress",
          "text": "Yes, and it has for a long time. WordPress core has emitted a self-referencing rel=canonical tag on singular views since version 2.9.0, through a function called rel_canonical() that's hooked to the wp_head action ( add_action('wp_head', 'rel_canonical') ). If you're running stock WordPress with no SEO plugin and you view source on a single post, you will see a canonical link tag pointing back at that post's own URL. You didn't configure it; core put it there.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-wordpress/",
          "pageTitle": "Canonical Tags in WordPress | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "WordPress",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WordPress",
          "targetId": "e_wordpress",
          "targetUri": "https://en.wikipedia.org/wiki/WordPress",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_alternate_page_with_proper_canonical_tag",
      "@type": "Concept",
      "name": "Alternate Page With Proper Canonical Tag",
      "description": "The reassuring Search Console status: your page correctly points to another canonical, and Google is consolidating it exactly as intended.",
      "hasChunks": [
        {
          "chunkId": "c_alternate-page-with-proper-canonical-tag",
          "text": "Google's own definition of this Page indexing report status reads: \"This page is marked as an alternate of another page and correctly points to the canonical page.\" In plain terms, the flagged page carries a rel=canonical tag that points to a different URL, Google has accepted that declaration, and that other URL is the one being indexed. Google deliberately does not index the alternate page itself, because the alternate has told Google, correctly, that it is not the version meant to appear in search results.",
          "sourceUrl": "https://www.canonicaltag.com/alternate-page-with-proper-canonical-tag/",
          "pageTitle": "Alternate Page With Proper Canonical Tag | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Alternate Page With Proper Canonical Tag",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Google Search Console Statuses"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Google Search Console",
          "targetId": "e_google_search_console",
          "targetUri": "https://en.wikipedia.org/wiki/Google_Search_Console",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_shopify",
      "@type": "Concept",
      "name": "Canonical Tags in Shopify",
      "description": "How Shopify auto-generates canonicals, the collection-versus-product URL behavior, and how to customize the tag in theme.liquid.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-shopify",
          "text": "Yes. Shopify auto-generates canonical tags on products, collections, pages, and blog articles without any setup on your part. The mechanism is a Liquid object, canonical_url , that Shopify populates for every page and that themes reference in the document head — typically in theme.liquid , sometimes broken out into a separate meta-tags.liquid snippet that theme.liquid includes.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-shopify/",
          "pageTitle": "Canonical Tags in Shopify | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Shopify",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Ecommerce Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Shopify",
          "targetId": "e_shopify",
          "targetUri": "https://en.wikipedia.org/wiki/Shopify",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_self_referencing_canonical_tag",
      "@type": "Concept",
      "name": "Self-Referencing Canonical Tags",
      "description": "A canonical tag that points a page at its own URL, the recommended baseline that removes ambiguity from parameter and variant URLs.",
      "hasChunks": [
        {
          "chunkId": "c_self-referencing-canonical-tag",
          "text": "A self-referencing canonical tag is a rel=canonical link element on a page that points back to that same page's own preferred URL, rather than to some other page. It looks unremarkable in the source code, but it does real work: it removes any ambiguity about which URL variant should be treated as the indexable one. Most pages are reachable through more than one URL.",
          "sourceUrl": "https://www.canonicaltag.com/self-referencing-canonical-tag/",
          "pageTitle": "Self-Referencing Canonical Tags | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Self-Referencing Canonicals",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_yoast_seo_canonical_urls",
      "@type": "Concept",
      "name": "Canonical URLs in Yoast SEO",
      "description": "How Yoast SEO adds self-referencing canonicals across your whole WordPress site, where to override them, and how to fix a wrong canonical.",
      "hasChunks": [
        {
          "chunkId": "c_yoast-seo-canonical-urls",
          "text": "Where WordPress core only self-canonicalizes singular content, Yoast SEO extends that behavior to essentially every indexable page type on the site: single posts and pages, the homepage, category, tag, and other taxonomy archives, custom post type archives, author and date archives, and each individual paginated page within a series. In practice, this closes the gap left by core — Yoast is doing the work that plain WordPress doesn't. There is one deliberate exception. A page or post that's set to noindex gets no canonical tag from Yoast at all.",
          "sourceUrl": "https://www.canonicaltag.com/yoast-seo-canonical-urls/",
          "pageTitle": "Canonical URLs in Yoast SEO | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Yoast SEO",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Yoast SEO",
          "targetId": "e_yoast",
          "targetUri": "https://en.wikipedia.org/wiki/Yoast",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WordPress",
          "targetId": "e_wordpress",
          "targetUri": "https://en.wikipedia.org/wiki/WordPress",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_duplicate_google_chose_different_canonical",
      "@type": "Concept",
      "name": "Duplicate, Google Chose Different Canonical Than User",
      "description": "You declared a canonical, but Google overrode it and selected a different URL, the clearest proof that rel=canonical is a hint and not a directive.",
      "hasChunks": [
        {
          "chunkId": "c_duplicate-google-chose-different-canonical",
          "text": "\"Duplicate, Google chose different canonical than user\" is a status in the Page indexing report of Google Search Console. Google's own definition: \"This page is marked as canonical for a set of pages, but Google thinks another URL makes a better canonical.\" This is a fundamentally different situation from \"duplicate without user-selected canonical.\" There, you declared nothing and Google filled the gap.",
          "sourceUrl": "https://www.canonicaltag.com/duplicate-google-chose-different-canonical/",
          "pageTitle": "Duplicate, Google Chose Different Canonical Than User | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Google Chose a Different Canonical",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Google Search Console Statuses"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Google Search Console",
          "targetId": "e_google_search_console",
          "targetUri": "https://en.wikipedia.org/wiki/Google_Search_Console",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_duplicate_submitted_url_not_selected_as_canonical",
      "@type": "Concept",
      "name": "Duplicate, Submitted URL Not Selected as Canonical",
      "description": "A URL you submitted in your sitemap was not chosen as canonical because Google treats it as a duplicate of another page.",
      "hasChunks": [
        {
          "chunkId": "c_duplicate-submitted-url-not-selected-as-canonical",
          "text": "In the Page indexing report in Google Search Console, this label appears next to a URL that you actively submitted for indexing, most often by listing it in an XML sitemap. Google evaluated that URL alongside a cluster of duplicate or near-duplicate pages and chose a different URL as the canonical, or representative, version. The submitted URL still exists and Google can still crawl it, but Google indexes the other URL and folds this one's ranking signals into that other page instead.",
          "sourceUrl": "https://www.canonicaltag.com/duplicate-submitted-url-not-selected-as-canonical/",
          "pageTitle": "Duplicate, Submitted URL Not Selected as Canonical | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Submitted URL Not Selected as Canonical",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Google Search Console Statuses"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Google Search Console",
          "targetId": "e_google_search_console",
          "targetUri": "https://en.wikipedia.org/wiki/Google_Search_Console",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Duplicate content",
          "targetId": "e_duplicate_content",
          "targetUri": "https://en.wikipedia.org/wiki/Duplicate_content",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_user_declared_vs_google_selected_canonical",
      "@type": "Concept",
      "name": "User-Declared vs Google-Selected Canonical",
      "description": "The two labels in Search Console's URL Inspection tool: the canonical you declared, and the one Google actually chose to index.",
      "hasChunks": [
        {
          "chunkId": "c_user-declared-vs-google-selected-canonical",
          "text": "Open the URL Inspection tool in Google Search Console on almost any indexed page and you will see two separate fields: User-declared canonical and Google-selected canonical . They are not always the same URL, and the gap between them is one of the most misunderstood parts of technical SEO. I get asked about this constantly, so let's define both terms precisely. The user-declared canonical is the URL you told Google to treat as the master copy.",
          "sourceUrl": "https://www.canonicaltag.com/user-declared-vs-google-selected-canonical/",
          "pageTitle": "User-Declared vs Google-Selected Canonical | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "User-Declared vs Google-Selected",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Google Search Console Statuses"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Google Search Console",
          "targetId": "e_google_search_console",
          "targetUri": "https://en.wikipedia.org/wiki/Google_Search_Console",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_and_noindex",
      "@type": "Concept",
      "name": "Canonical Tag and Noindex Together",
      "description": "Combining rel=canonical and a noindex tag on the same page sends Google contradictory instructions. Why to avoid it and what to do instead.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-and-noindex",
          "text": "The short answer: avoid it. Putting a rel=canonical tag pointing to another URL and a noindex directive on the same page sends Google two instructions that work against each other, and the outcome is unreliable. If the goal is to consolidate duplicate content, use canonical alone. If the goal is to keep a page out of the index entirely, use noindex alone. Combining them on the assumption that Google will neatly sort out the intended outcome is not a safe bet.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-and-noindex/",
          "pageTitle": "Canonical Tag and Noindex Together | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Canonical and Noindex",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Noindex",
          "targetId": "e_noindex",
          "targetUri": "https://en.wikipedia.org/wiki/Noindex",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Meta element",
          "targetId": "e_meta_element",
          "targetUri": "https://en.wikipedia.org/wiki/Meta_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_and_pagination",
      "@type": "Concept",
      "name": "Canonical Tags and Pagination",
      "description": "How to canonicalize a paginated series correctly, with each page self-referencing, and why canonicalizing everything to page one backfires.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-and-pagination",
          "text": "A paginated series is a set of pages that splits a single collection of content into sequential chunks: page 1, page 2, page 3, and so on, of a category listing, a search results set, or a long article broken into parts. The correct canonicalization approach is simple and often gets over-thought: each page in the series should carry a self-referencing rel=canonical, meaning page 2 canonicalizes to page 2's own URL, page 3 canonicalizes to page 3's own URL, and so forth. There is no cross-page canonicalization within a normal paginated series.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-and-pagination/",
          "pageTitle": "Canonical Tags and Pagination | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Canonicals and Pagination",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_cross_domain_canonical",
      "@type": "Concept",
      "name": "Cross-Domain Canonical Tags",
      "description": "Pointing a canonical to a URL on another domain, the content-syndication technique Google now de-emphasizes in favor of noindex.",
      "hasChunks": [
        {
          "chunkId": "c_cross-domain-canonical",
          "text": "A cross-domain canonical is a rel=canonical tag that points to a URL on a different domain than the page it appears on, rather than to another URL on the same site. It's most often seen in content syndication, where an article published on one site is republished, in whole or in part, on another.",
          "sourceUrl": "https://www.canonicaltag.com/cross-domain-canonical/",
          "pageTitle": "Cross-Domain Canonical Tags | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Cross-Domain Canonicals",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Duplicate content",
          "targetId": "e_duplicate_content",
          "targetUri": "https://en.wikipedia.org/wiki/Duplicate_content",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_multiple_canonical_tags",
      "@type": "Concept",
      "name": "Multiple and Conflicting Canonical Tags",
      "description": "When a page outputs more than one rel=canonical, Google may ignore them all. How duplicate tags happen and how to resolve them.",
      "hasChunks": [
        {
          "chunkId": "c_multiple-canonical-tags",
          "text": "A page should carry exactly one rel=canonical tag. When it carries more than one, and those tags point to different target URLs, you have a conflicting-canonicals situation. The widely-cited behavior is that when Google encounters multiple conflicting canonical signals on a single page, it will likely ignore all of them and fall back to selecting its own canonical URL using its own signals instead.",
          "sourceUrl": "https://www.canonicaltag.com/multiple-canonical-tags/",
          "pageTitle": "Multiple and Conflicting Canonical Tags | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Multiple Canonical Tags",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Canonical link element",
          "targetId": "e_canonical_link_element",
          "targetUri": "https://en.wikipedia.org/wiki/Canonical_link_element",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_pointing_to_non_canonical_url",
      "@type": "Concept",
      "name": "Canonical Pointing to a Redirect, 404, or Noindexed Page",
      "description": "A canonical only works if its target is a clean, indexable 200 URL. Pointing at redirects, errors, or noindexed pages wastes the signal.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-pointing-to-non-canonical-url",
          "text": "A rel=canonical tag is an instruction to consolidate ranking and indexing signals onto a specific target URL. For that instruction to be usable, the target has to actually be something Google can index: a URL that returns a normal 200 OK status, is not blocked from crawling, does not carry a noindex directive, and is not itself canonicalized somewhere else.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-pointing-to-non-canonical-url/",
          "pageTitle": "Canonical Pointing to a Redirect, 404, or Noindexed Page | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Canonical to a Bad Target",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Conflicts & Edge Cases"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "URL redirection",
          "targetId": "e_http_301",
          "targetUri": "https://en.wikipedia.org/wiki/URL_redirection",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_wix",
      "@type": "Concept",
      "name": "Canonical Tags in Wix",
      "description": "How Wix sets a default canonical for every page, how to override it, and the sitemap side effect you need to watch for.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-wix",
          "text": "Yes. On Wix, a self-referencing canonical tag ships by default on every page you publish -- standard pages, Wix Stores product pages, and Wix Blog posts all get one without you doing anything. A self-referencing canonical means the tag's URL matches the page it sits on, which is the correct baseline signal for search engines: it tells crawlers this exact URL is the version you want indexed and credited, even when the same content could theoretically be reached through more than one path. For most Wix site owners, this is good news.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-wix/",
          "pageTitle": "Canonical Tags in Wix | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Wix",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Wix",
          "targetId": "e_wix",
          "targetUri": "https://en.wikipedia.org/wiki/Wix.com",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_squarespace",
      "@type": "Concept",
      "name": "Canonical Tags in Squarespace",
      "description": "Squarespace auto-manages a self-referencing canonical you cannot natively edit, and injected canonicals can create duplicates if you are not careful.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-squarespace",
          "text": "Squarespace automatically injects a self-referencing canonical tag into the <head> of every page it renders. There is no setup step, no toggle to find, and no configuration screen involved -- the tag is simply present in the rendered HTML from the moment a page is published, and it points back at that page's own URL. The important framing here is that the platform, not the site owner, owns the canonical tag on Squarespace.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-squarespace/",
          "pageTitle": "Canonical Tags in Squarespace | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Squarespace",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Squarespace",
          "targetId": "e_squarespace",
          "targetUri": "https://en.wikipedia.org/wiki/Squarespace",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_webflow",
      "@type": "Concept",
      "name": "Canonical Tags in Webflow",
      "description": "Unlike most platforms, Webflow does not add a canonical by default. How to set the global and per-page canonical, and the CMS limitation to know.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-webflow",
          "text": "This is the detail that separates Webflow from nearly every other platform covered on this site: Webflow does not automatically output a self-referencing canonical tag. Where other platforms ship a canonical on every page with zero configuration, Webflow's default state is silence. If the global canonical field is left empty, no rel=canonical tag is emitted on your pages at all. This is worth pausing on because Webflow's own Help Center language can be misread.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-webflow/",
          "pageTitle": "Canonical Tags in Webflow | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Webflow",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Webflow",
          "targetId": "e_webflow",
          "targetUri": "https://en.wikipedia.org/wiki/Webflow",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_magento",
      "@type": "Concept",
      "name": "Canonical Tags in Magento (Adobe Commerce)",
      "description": "How to switch on canonical tags for Magento products and categories, and why the built-in setting does not fix layered navigation.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-magento",
          "text": "In Magento and Adobe Commerce, canonical tags are not something you get out of the box on catalog pages. Community consensus among Magento developers — this isn't a single documented Adobe statement so much as the near-universal, hands-on-the-admin-panel experience — is that both canonical settings ship set to No . A fresh Magento install, or a store nobody has revisited since setup, is very likely serving product and category pages with no rel=canonical tag in the head at all.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-magento/",
          "pageTitle": "Canonical Tags in Magento (Adobe Commerce) | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Magento / Adobe Commerce",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Ecommerce Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Magento",
          "targetId": "e_magento",
          "targetUri": "https://en.wikipedia.org/wiki/Magento",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_nextjs",
      "@type": "Concept",
      "name": "Canonical Tags in Next.js",
      "description": "Setting canonicals in Next.js with the App Router Metadata API, the Pages Router, next-seo, and the metadataBase gotcha to avoid.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-nextjs",
          "text": "Next.js, in both the App Router and the Pages Router, does not emit a rel=canonical tag for you. There's no default behavior to discover in the rendered HTML — if you haven't explicitly set one, there isn't one. This puts Next.js in the same category as a bare React app rather than a platform like Yoast SEO or Wix that self-references by default: every canonical in a Next.js site is something a developer opted into.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-nextjs/",
          "pageTitle": "Canonical Tags in Next.js | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Next.js",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "JavaScript Frameworks"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Next.js",
          "targetId": "e_nextjs",
          "targetUri": "https://en.wikipedia.org/wiki/Next.js",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_react",
      "@type": "Concept",
      "name": "Canonical Tags in React",
      "description": "Adding canonical tags to a React app with react-helmet-async, and why a client-only canonical is risky without server-side rendering.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-react",
          "text": "A React application — whether built with Create React App, Vite, or hand-rolled — outputs no rel=canonical tag by default, for the same reason a bare Next.js project doesn't: nothing in React's rendering model concerns itself with document head metadata unless you tell it to. Inspect the HTML of an unmodified React single-page app and there's no canonical link element anywhere, because React only knows how to render into a div — the head isn't part of the component tree it manages.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-react/",
          "pageTitle": "Canonical Tags in React | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "React",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "JavaScript Frameworks"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "React",
          "targetId": "e_react",
          "targetUri": "https://en.wikipedia.org/wiki/React_(software)",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_rank_math_canonical_urls",
      "@type": "Concept",
      "name": "Canonical URLs in Rank Math",
      "description": "How Rank Math sets self-referencing canonicals across WordPress, where to override them, and the filter for programmatic control.",
      "hasChunks": [
        {
          "chunkId": "c_rank-math-canonical-urls",
          "text": "A canonical tag is the line of code, <link rel='canonical' href='...'> , that appears in a page's HTML head and tells search engines which URL is the master version when duplicate or near-duplicate versions exist elsewhere. Rank Math ships with this turned on. Rank Math's own support documentation states plainly that Rank Math adds the canonical tag to all the indexable URLs on a site, and that it uses the current post or page URL as the canonical URL by default, meaning you would only touch the setting if you want to point a page somewhere else.",
          "sourceUrl": "https://www.canonicaltag.com/rank-math-canonical-urls/",
          "pageTitle": "Canonical URLs in Rank Math | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Rank Math",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WordPress",
          "targetId": "e_wordpress",
          "targetUri": "https://en.wikipedia.org/wiki/WordPress",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_all_in_one_seo_canonical_urls",
      "@type": "Concept",
      "name": "Canonical URLs in All in One SEO",
      "description": "How All in One SEO (AIOSEO) supplements WordPress core with self-referencing canonicals, and where to override them.",
      "hasChunks": [
        {
          "chunkId": "c_all-in-one-seo-canonical-urls",
          "text": "All in One SEO, usually shortened to AIOSEO, is refreshingly candid about this in its own documentation: WordPress does a great job of outputting the canonical URL for your content, and All in One SEO just supplements WordPress by adding some advanced features. That's an important starting point, because the canonical tag on an AIOSEO site isn't purely an AIOSEO invention, it's a layered system.",
          "sourceUrl": "https://www.canonicaltag.com/all-in-one-seo-canonical-urls/",
          "pageTitle": "Canonical URLs in All in One SEO | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "All in One SEO",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WordPress",
          "targetId": "e_wordpress",
          "targetUri": "https://en.wikipedia.org/wiki/WordPress",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_woocommerce",
      "@type": "Concept",
      "name": "Canonical Tags in WooCommerce",
      "description": "WooCommerce adds no canonical layer of its own; it relies on WordPress and your SEO plugin. The real work is taming filter, sort, and pagination URLs.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-woocommerce",
          "text": "No, and WooCommerce doesn't try to hide that fact. WooCommerce is a plugin layered on top of WordPress, and it does not implement its own rel=canonical system. Whatever canonical tag appears on a WooCommerce page comes from one of two sources underneath it.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-woocommerce/",
          "pageTitle": "Canonical Tags in WooCommerce | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "WooCommerce",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Ecommerce Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WooCommerce",
          "targetId": "e_woocommerce",
          "targetUri": "https://en.wikipedia.org/wiki/WooCommerce",
          "confidence": "declared"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "WordPress",
          "targetId": "e_wordpress",
          "targetUri": "https://en.wikipedia.org/wiki/WordPress",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_bigcommerce",
      "@type": "Concept",
      "name": "Canonical Tags in BigCommerce",
      "description": "BigCommerce adds self-referencing canonicals automatically and folds a product's multiple category URLs to one canonical product URL.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-bigcommerce",
          "text": "Yes, on the page types that matter most. BigCommerce automatically inserts a rel=\"canonical\" link element into the <head> of storefront pages built on modern Stencil themes, and it does so on product pages, category pages, web pages (content pages), and blog posts. In each case the canonical is self-referencing: it points at the URL currently displayed in the browser's address bar, which is the platform's default behavior rather than something a store owner has to type in page by page.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-bigcommerce/",
          "pageTitle": "Canonical Tags in BigCommerce | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "BigCommerce",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "Ecommerce Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "BigCommerce",
          "targetId": "e_bigcommerce",
          "targetUri": "https://en.wikipedia.org/wiki/BigCommerce",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_drupal",
      "@type": "Concept",
      "name": "Canonical Tags in Drupal",
      "description": "Drupal core adds self-referencing canonicals on entity pages; the Metatag module controls and overrides them.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-drupal",
          "text": "Yes, on modern Drupal. Drupal 8, 9, and 10 core automatically emits a self-referencing rel=\"canonical\" link in the <head> of every canonical entity route, most importantly node (content) pages, and also taxonomy term pages and user pages. Core builds this as an attachment on the page's build array, pointing at the entity's canonical URL, which is its clean path alias if you're running Pathauto, or the raw /node/123 path if you aren't.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-drupal/",
          "pageTitle": "Canonical Tags in Drupal | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Drupal",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Drupal",
          "targetId": "e_drupal",
          "targetUri": "https://en.wikipedia.org/wiki/Drupal",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_joomla",
      "@type": "Concept",
      "name": "Canonical Tags in Joomla",
      "description": "Joomla's built-in canonical support is weak by design; SEF and non-SEF URLs create duplicates that an extension resolves.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-joomla",
          "text": "Partially, and this is a genuine, long-standing weak point that deserves heavy hedging rather than a confident yes or no. Joomla 2.5 did essentially nothing with canonicals. Joomla 3.x and 4.x/5.x do add canonical link tags in many cases, with the routing and SEF layer setting a canonical that usually points to itself for a correctly resolved preferred URL.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-joomla/",
          "pageTitle": "Canonical Tags in Joomla | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Joomla",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Joomla",
          "targetId": "e_joomla",
          "targetUri": "https://en.wikipedia.org/wiki/Joomla",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_ghost",
      "@type": "Concept",
      "name": "Canonical Tags in Ghost",
      "description": "Ghost adds self-referencing canonicals automatically and offers a per-post Canonical URL field for republished content.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-ghost",
          "text": "Yes. Ghost automatically applies a self-referencing rel=\"canonical\" tag to posts and pages by default, pointing each piece of content at its own URL. This is rendered through the theme's {{ghost_head}} helper, which Ghost's default themes, including Casper, include in the <head>. Because the canonical tag is injected by {{ghost_head}} , any theme that correctly includes that helper gets correct self-referencing canonicals with no additional configuration required.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-ghost/",
          "pageTitle": "Canonical Tags in Ghost | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "Ghost",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "Ghost",
          "targetId": "e_ghost",
          "targetUri": "https://en.wikipedia.org/wiki/Ghost_(blogging_platform)",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_tags_in_hubspot",
      "@type": "Concept",
      "name": "Canonical Tags in HubSpot CMS",
      "description": "HubSpot generates self-referencing canonicals by default, with a page-level override and domain-level canonicalization.",
      "hasChunks": [
        {
          "chunkId": "c_canonical-tags-in-hubspot",
          "text": "Yes. HubSpot's Knowledge Base states it plainly: by default, when you create a new page or blog post, its own URL is set as the canonical for that content. That means website pages, landing pages, and individual blog posts all receive a self-referencing canonical automatically, with no manual setup required for the common case. There is one documented and important exception: blog listing pages do not have a canonical URL set by default.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-hubspot/",
          "pageTitle": "Canonical Tags in HubSpot CMS | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "alternateName": "HubSpot CMS",
      "relations": [
        {
          "predicate": "PART_OF",
          "targetName": "CMS & Website Platforms"
        },
        {
          "predicate": "RELATES_TO",
          "targetName": "HubSpot",
          "targetId": "e_hubspot",
          "targetUri": "https://en.wikipedia.org/wiki/HubSpot",
          "confidence": "declared"
        }
      ]
    },
    {
      "entityId": "e_canonical_link_element",
      "@type": "Concept",
      "name": "Canonical link element",
      "description": "The HTML link element rel=canonical, used to specify the preferred (canonical) URL for a page when the same or similar content is available at multiple URLs.",
      "sameAs": "https://en.wikipedia.org/wiki/Canonical_link_element",
      "hasChunks": [
        {
          "chunkId": "c_e_canonical_link_element",
          "text": "The HTML link element rel=canonical, used to specify the preferred (canonical) URL for a page when the same or similar content is available at multiple URLs.",
          "sourceUrl": "https://www.canonicaltag.com/guides/what-is-a-canonical-tag/",
          "pageTitle": "What Is a Canonical Tag? | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_url_normalization",
      "@type": "Concept",
      "name": "URL canonicalization",
      "description": "The process of selecting and standardizing a single preferred URL from a set of URLs that return the same or similar content, also known as URL normalization.",
      "sameAs": "https://en.wikipedia.org/wiki/URI_normalization",
      "hasChunks": [
        {
          "chunkId": "c_e_url_normalization",
          "text": "The process of selecting and standardizing a single preferred URL from a set of URLs that return the same or similar content, also known as URL normalization.",
          "sourceUrl": "https://www.canonicaltag.com/guides/canonicalization-in-seo/",
          "pageTitle": "Canonicalization in SEO | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_duplicate_content",
      "@type": "Concept",
      "name": "Duplicate content",
      "description": "Substantive blocks of content that appear on more than one URL, which search engines consolidate to a single canonical URL for indexing.",
      "sameAs": "https://en.wikipedia.org/wiki/Duplicate_content",
      "hasChunks": [
        {
          "chunkId": "c_e_duplicate_content",
          "text": "Substantive blocks of content that appear on more than one URL, which search engines consolidate to a single canonical URL for indexing.",
          "sourceUrl": "https://www.canonicaltag.com/guides/canonicalization-in-seo/",
          "pageTitle": "Canonicalization in SEO | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_seo",
      "@type": "Concept",
      "name": "Search engine optimization",
      "description": "The practice of improving a website's visibility in organic search results, of which correct canonicalization is a core technical component.",
      "sameAs": "https://en.wikipedia.org/wiki/Search_engine_optimization",
      "hasChunks": [
        {
          "chunkId": "c_e_seo",
          "text": "The practice of improving a website's visibility in organic search results, of which correct canonicalization is a core technical component.",
          "sourceUrl": "https://www.canonicaltag.com/guides/what-is-a-canonical-tag/",
          "pageTitle": "What Is a Canonical Tag? | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_google_search_console",
      "@type": "Concept",
      "name": "Google Search Console",
      "description": "Google's free service for monitoring a site's presence in Search results; its Page indexing report surfaces canonical statuses such as duplicate without user-selected canonical.",
      "sameAs": "https://en.wikipedia.org/wiki/Google_Search_Console",
      "hasChunks": [
        {
          "chunkId": "c_e_google_search_console",
          "text": "Google's free service for monitoring a site's presence in Search results; its Page indexing report surfaces canonical statuses such as duplicate without user-selected canonical.",
          "sourceUrl": "https://www.canonicaltag.com/duplicate-without-user-selected-canonical/",
          "pageTitle": "Duplicate Without User-Selected Canonical | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_hreflang",
      "@type": "Concept",
      "name": "Hreflang",
      "description": "An HTML attribute and HTTP mechanism that specifies the language and regional targeting of a page, which must be kept consistent with self-referencing canonical tags.",
      "sameAs": "https://en.wikipedia.org/wiki/Hreflang",
      "hasChunks": [
        {
          "chunkId": "c_e_hreflang",
          "text": "An HTML attribute and HTTP mechanism that specifies the language and regional targeting of a page, which must be kept consistent with self-referencing canonical tags.",
          "sourceUrl": "https://www.canonicaltag.com/guides/canonical-tags-vs-hreflang/",
          "pageTitle": "Canonical Tags vs Hreflang | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_http_301",
      "@type": "Concept",
      "name": "URL redirection",
      "description": "The technique of sending a URL to a different location, including the HTTP 301 permanent redirect, a strong canonicalization signal that consolidates a URL to its destination, unlike the advisory canonical tag.",
      "sameAs": "https://en.wikipedia.org/wiki/URL_redirection",
      "hasChunks": [
        {
          "chunkId": "c_e_http_301",
          "text": "The technique of sending a URL to a different location, including the HTTP 301 permanent redirect, a strong canonicalization signal that consolidates a URL to its destination, unlike the advisory canonical tag.",
          "sourceUrl": "https://www.canonicaltag.com/guides/canonical-tag-vs-301-redirect/",
          "pageTitle": "Canonical Tag vs 301 Redirect | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_meta_element",
      "@type": "Concept",
      "name": "Meta element",
      "description": "HTML elements placed in the document head that provide metadata about a web page, the family of tags that includes the canonical link and the robots meta tag.",
      "sameAs": "https://en.wikipedia.org/wiki/Meta_element",
      "hasChunks": [
        {
          "chunkId": "c_e_meta_element",
          "text": "HTML elements placed in the document head that provide metadata about a web page, the family of tags that includes the canonical link and the robots meta tag.",
          "sourceUrl": "https://www.canonicaltag.com/guides/rel-canonical-syntax/",
          "pageTitle": "rel=canonical Syntax Reference | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_noindex",
      "@type": "Concept",
      "name": "Noindex",
      "description": "A robots directive instructing search engines not to index a page, which conflicts with a canonical tag when both are applied to the same URL.",
      "sameAs": "https://en.wikipedia.org/wiki/Noindex",
      "hasChunks": [
        {
          "chunkId": "c_e_noindex",
          "text": "A robots directive instructing search engines not to index a page, which conflicts with a canonical tag when both are applied to the same URL.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-and-noindex/",
          "pageTitle": "Canonical Tag and Noindex Together | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_wordpress",
      "@type": "Concept",
      "name": "WordPress",
      "description": "The open-source content management system that outputs self-referencing canonical tags on singular content and exposes filters to override them.",
      "sameAs": "https://en.wikipedia.org/wiki/WordPress",
      "hasChunks": [
        {
          "chunkId": "c_e_wordpress",
          "text": "The open-source content management system that outputs self-referencing canonical tags on singular content and exposes filters to override them.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-wordpress/",
          "pageTitle": "Canonical Tags in WordPress | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_yoast",
      "@type": "Concept",
      "name": "Yoast SEO",
      "description": "A widely used WordPress SEO plugin that adds self-referencing canonical tags across a site and provides a per-page canonical override field.",
      "sameAs": "https://en.wikipedia.org/wiki/Yoast",
      "hasChunks": [
        {
          "chunkId": "c_e_yoast",
          "text": "A widely used WordPress SEO plugin that adds self-referencing canonical tags across a site and provides a per-page canonical override field.",
          "sourceUrl": "https://www.canonicaltag.com/yoast-seo-canonical-urls/",
          "pageTitle": "Canonical URLs in Yoast SEO | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_shopify",
      "@type": "Concept",
      "name": "Shopify",
      "description": "A hosted ecommerce platform that automatically generates canonical tags, folding collection-scoped product URLs to a single canonical product URL.",
      "sameAs": "https://en.wikipedia.org/wiki/Shopify",
      "hasChunks": [
        {
          "chunkId": "c_e_shopify",
          "text": "A hosted ecommerce platform that automatically generates canonical tags, folding collection-scoped product URLs to a single canonical product URL.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-shopify/",
          "pageTitle": "Canonical Tags in Shopify | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_wix",
      "@type": "Concept",
      "name": "Wix",
      "description": "A hosted website builder that creates a default self-referencing canonical for every page and allows overrides through its advanced SEO settings.",
      "sameAs": "https://en.wikipedia.org/wiki/Wix.com",
      "hasChunks": [
        {
          "chunkId": "c_e_wix",
          "text": "A hosted website builder that creates a default self-referencing canonical for every page and allows overrides through its advanced SEO settings.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-wix/",
          "pageTitle": "Canonical Tags in Wix | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_squarespace",
      "@type": "Concept",
      "name": "Squarespace",
      "description": "A hosted website builder that auto-manages self-referencing canonical tags, which cannot be natively edited or removed.",
      "sameAs": "https://en.wikipedia.org/wiki/Squarespace",
      "hasChunks": [
        {
          "chunkId": "c_e_squarespace",
          "text": "A hosted website builder that auto-manages self-referencing canonical tags, which cannot be natively edited or removed.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-squarespace/",
          "pageTitle": "Canonical Tags in Squarespace | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_webflow",
      "@type": "Concept",
      "name": "Webflow",
      "description": "A hosted visual web design platform that does not output a canonical tag by default until a global canonical URL is configured.",
      "sameAs": "https://en.wikipedia.org/wiki/Webflow",
      "hasChunks": [
        {
          "chunkId": "c_e_webflow",
          "text": "A hosted visual web design platform that does not output a canonical tag by default until a global canonical URL is configured.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-webflow/",
          "pageTitle": "Canonical Tags in Webflow | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_magento",
      "@type": "Concept",
      "name": "Magento",
      "description": "An open-source ecommerce platform (Adobe Commerce) whose canonical link meta tag for products and categories is controlled by SEO configuration settings.",
      "sameAs": "https://en.wikipedia.org/wiki/Magento",
      "hasChunks": [
        {
          "chunkId": "c_e_magento",
          "text": "An open-source ecommerce platform (Adobe Commerce) whose canonical link meta tag for products and categories is controlled by SEO configuration settings.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-magento/",
          "pageTitle": "Canonical Tags in Magento | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_nextjs",
      "@type": "Concept",
      "name": "Next.js",
      "description": "A React framework that sets canonical tags through its Metadata API (alternates.canonical) or the Pages Router head, rendered into the server HTML.",
      "sameAs": "https://en.wikipedia.org/wiki/Next.js",
      "hasChunks": [
        {
          "chunkId": "c_e_nextjs",
          "text": "A React framework that sets canonical tags through its Metadata API (alternates.canonical) or the Pages Router head, rendered into the server HTML.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-nextjs/",
          "pageTitle": "Canonical Tags in Next.js | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_react",
      "@type": "Concept",
      "name": "React",
      "description": "A JavaScript library for building user interfaces; canonical tags are typically managed with react-helmet-async and are most reliable when server-rendered.",
      "sameAs": "https://en.wikipedia.org/wiki/React_(software)",
      "hasChunks": [
        {
          "chunkId": "c_e_react",
          "text": "A JavaScript library for building user interfaces; canonical tags are typically managed with react-helmet-async and are most reliable when server-rendered.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-react/",
          "pageTitle": "Canonical Tags in React | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_woocommerce",
      "@type": "Concept",
      "name": "WooCommerce",
      "description": "The open-source ecommerce plugin for WordPress; it relies on WordPress core and the active SEO plugin for canonicals, so filter and sort URLs are the main duplicate-content concern.",
      "sameAs": "https://en.wikipedia.org/wiki/WooCommerce",
      "hasChunks": [
        {
          "chunkId": "c_e_woocommerce",
          "text": "The open-source ecommerce plugin for WordPress; it relies on WordPress core and the active SEO plugin for canonicals, so filter and sort URLs are the main duplicate-content concern.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-woocommerce/",
          "pageTitle": "Canonical Tags in WooCommerce | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_bigcommerce",
      "@type": "Concept",
      "name": "BigCommerce",
      "description": "A hosted ecommerce platform that automatically outputs self-referencing canonical tags and folds a product's multiple category URLs to a single canonical product URL.",
      "sameAs": "https://en.wikipedia.org/wiki/BigCommerce",
      "hasChunks": [
        {
          "chunkId": "c_e_bigcommerce",
          "text": "A hosted ecommerce platform that automatically outputs self-referencing canonical tags and folds a product's multiple category URLs to a single canonical product URL.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-bigcommerce/",
          "pageTitle": "Canonical Tags in BigCommerce | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_drupal",
      "@type": "Concept",
      "name": "Drupal",
      "description": "An open-source content management system whose modern core emits self-referencing canonical tags on entity pages, with the Metatag module used to control and override them.",
      "sameAs": "https://en.wikipedia.org/wiki/Drupal",
      "hasChunks": [
        {
          "chunkId": "c_e_drupal",
          "text": "An open-source content management system whose modern core emits self-referencing canonical tags on entity pages, with the Metatag module used to control and override them.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-drupal/",
          "pageTitle": "Canonical Tags in Drupal | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_joomla",
      "@type": "Concept",
      "name": "Joomla",
      "description": "An open-source content management system whose built-in canonical support is limited, so SEF and non-SEF URLs create duplicates that a third-party extension resolves.",
      "sameAs": "https://en.wikipedia.org/wiki/Joomla",
      "hasChunks": [
        {
          "chunkId": "c_e_joomla",
          "text": "An open-source content management system whose built-in canonical support is limited, so SEF and non-SEF URLs create duplicates that a third-party extension resolves.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-joomla/",
          "pageTitle": "Canonical Tags in Joomla | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_ghost",
      "@type": "Concept",
      "name": "Ghost",
      "description": "An open-source publishing platform that outputs self-referencing canonical tags automatically and provides a per-post canonical URL field for republished content.",
      "sameAs": "https://en.wikipedia.org/wiki/Ghost_(blogging_platform)",
      "hasChunks": [
        {
          "chunkId": "c_e_ghost",
          "text": "An open-source publishing platform that outputs self-referencing canonical tags automatically and provides a per-post canonical URL field for republished content.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-ghost/",
          "pageTitle": "Canonical Tags in Ghost | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_hubspot",
      "@type": "Concept",
      "name": "HubSpot",
      "description": "A hosted CMS and marketing platform that generates self-referencing canonical URLs by default, with page-level overrides and domain-level canonicalization.",
      "sameAs": "https://en.wikipedia.org/wiki/HubSpot",
      "hasChunks": [
        {
          "chunkId": "c_e_hubspot",
          "text": "A hosted CMS and marketing platform that generates self-referencing canonical URLs by default, with page-level overrides and domain-level canonicalization.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-tags-in-hubspot/",
          "pageTitle": "Canonical Tags in HubSpot CMS | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ]
    },
    {
      "entityId": "e_canonical_issues",
      "@type": "Taxonomy",
      "name": "Canonical Tag Issues",
      "description": "Canonical tag issues, Google Search Console statuses, and edge cases, including duplicate without user-selected canonical, alternate page with proper canonical tag, canonical versus noindex, pagination, and cross-domain canonicals.",
      "hasChunks": [
        {
          "chunkId": "c_e_canonical_issues",
          "text": "Canonical tag issues, Google Search Console statuses, and edge cases, including duplicate without user-selected canonical, alternate page with proper canonical tag, canonical versus noindex, pagination, and cross-domain canonicals.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-issues/",
          "pageTitle": "Canonical Tag Issues & Fixes | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "relations": [
        {
          "predicate": "INCLUDES",
          "targetName": "Duplicate Without User-Selected Canonical",
          "targetId": "e_duplicate_without_user_selected_canonical"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Alternate Page With Proper Canonical Tag",
          "targetId": "e_alternate_page_with_proper_canonical_tag"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Self-Referencing Canonical Tags",
          "targetId": "e_self_referencing_canonical_tag"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Duplicate, Google Chose Different Canonical Than User",
          "targetId": "e_duplicate_google_chose_different_canonical"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Duplicate, Submitted URL Not Selected as Canonical",
          "targetId": "e_duplicate_submitted_url_not_selected_as_canonical"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "User-Declared vs Google-Selected Canonical",
          "targetId": "e_user_declared_vs_google_selected_canonical"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tag and Noindex Together",
          "targetId": "e_canonical_and_noindex"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags and Pagination",
          "targetId": "e_canonical_and_pagination"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Cross-Domain Canonical Tags",
          "targetId": "e_cross_domain_canonical"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Multiple and Conflicting Canonical Tags",
          "targetId": "e_multiple_canonical_tags"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Pointing to a Redirect, 404, or Noindexed Page",
          "targetId": "e_canonical_pointing_to_non_canonical_url"
        }
      ]
    },
    {
      "entityId": "e_canonical_platforms",
      "@type": "Taxonomy",
      "name": "Canonical Tags by Platform",
      "description": "Platform-specific canonical tag implementation, covering WordPress, Yoast SEO, Shopify, Wix, Squarespace, Webflow, Magento, Next.js, and React.",
      "hasChunks": [
        {
          "chunkId": "c_e_canonical_platforms",
          "text": "Platform-specific canonical tag implementation, covering WordPress, Yoast SEO, Shopify, Wix, Squarespace, Webflow, Magento, Next.js, and React.",
          "sourceUrl": "https://www.canonicaltag.com/canonical-setup/",
          "pageTitle": "Canonical Tags by Platform | CanonicalTag.com",
          "publisher": "CanonicalTag.com",
          "contentType": "definition"
        }
      ],
      "relations": [
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in WordPress",
          "targetId": "e_canonical_tags_in_wordpress"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Shopify",
          "targetId": "e_canonical_tags_in_shopify"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical URLs in Yoast SEO",
          "targetId": "e_yoast_seo_canonical_urls"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Wix",
          "targetId": "e_canonical_tags_in_wix"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Squarespace",
          "targetId": "e_canonical_tags_in_squarespace"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Webflow",
          "targetId": "e_canonical_tags_in_webflow"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Magento (Adobe Commerce)",
          "targetId": "e_canonical_tags_in_magento"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Next.js",
          "targetId": "e_canonical_tags_in_nextjs"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in React",
          "targetId": "e_canonical_tags_in_react"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical URLs in Rank Math",
          "targetId": "e_rank_math_canonical_urls"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical URLs in All in One SEO",
          "targetId": "e_all_in_one_seo_canonical_urls"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in WooCommerce",
          "targetId": "e_canonical_tags_in_woocommerce"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in BigCommerce",
          "targetId": "e_canonical_tags_in_bigcommerce"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Drupal",
          "targetId": "e_canonical_tags_in_drupal"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Joomla",
          "targetId": "e_canonical_tags_in_joomla"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in Ghost",
          "targetId": "e_canonical_tags_in_ghost"
        },
        {
          "predicate": "INCLUDES",
          "targetName": "Canonical Tags in HubSpot CMS",
          "targetId": "e_canonical_tags_in_hubspot"
        }
      ]
    }
  ]
}