Guida di risoluzione

Aggiungere un tag canonical in WordPress

8 febbraio 2026 Aggiornato il 19 apr 2026

I tag canonical sono una parte cruciale della SEO tecnica che molti proprietari di siti WordPress trascurano. Un tag canonical è un piccolo pezzo di HTML nella sezione <head> della tua pagina che indica ai motori di ricerca quale URL sia la versione "ufficiale" di quel contenuto. Senza tag canonical, i motori di ricerca possono indicizzare più URL che mostrano tutti lo stesso contenuto, suddividendo il tuo ranking power tra quei duplicati.

Quando e perché hai bisogno dei tag canonical

Potresti pensare che il tuo sito non abbia contenuti duplicati, ma WordPress genera più URL duplicati di quanto la maggior parte delle persone si renda conto. Ecco gli scenari più comuni in cui i tag canonical diventano essenziali:

  • Parametri URL: I parametri di tracking come ?utm_source=newsletter o ?ref=twitter creano URL aggiuntivi che mostrano lo stesso contenuto della pagina. Senza un tag canonical, i motori di ricerca potrebbero indicizzare separatamente questi URL con parametri.
  • www vs non-www: Se sia https://example.com/page che https://www.example.com/page restituiscono lo stesso contenuto, viene considerato contenuto duplicato.
  • HTTP vs HTTPS: Durante o dopo una migrazione a HTTPS, entrambe le versioni del protocollo dei tuoi URL potrebbero essere accessibili.
  • Impaginazione: Le pagine di archivio come /blog/page/2/ e /blog/page/3/ necessitano di tag canonical che puntino a se stesse (non alla pagina 1), in modo che i motori di ricerca capiscano che si tratta di pagine distinte.
  • Variazioni con trailing slash: /about e /about/ sono tecnicamente URL diversi che possono entrambi servire lo stesso contenuto.
  • Contenuto simile o sindacato: Se pubblichi descrizioni di prodotti simili su pagine di categoria, o se il tuo contenuto viene ripubblicato altrove, i canonical aiutano a stabilire la fonte originale.

Come WordPress gestisce i tag canonical per default

Dalla versione 2.9 di WordPress, la piattaforma genera automaticamente un tag canonical di base tramite l'azione wp_head(). Finché il tuo tema include <?php wp_head(); ?> nella sezione <head> (e praticamente tutti i temi lo fanno), WordPress emette un tag <link rel="canonical"> sui singoli articoli e pagine.

Tuttavia, l'implementazione canonical integrata è piuttosto limitata. Non gestisce particolarmente bene le pagine di archivio, i custom post type e i casi limite. Ecco perché la maggior parte dei professionisti SEO consiglia di utilizzare un plugin SEO dedicato per una corretta gestione dei canonical.

Impostare i tag canonical con Yoast SEO

Yoast SEO offre la gestione più completa dei tag canonical per WordPress. Una volta installato, genera automaticamente URL canonical corretti per ogni pagina del tuo sito, inclusi articoli, pagine, archivi, categorie e tassonomie.

Per impostare un URL canonical personalizzato per un articolo o una pagina specifica:

  1. Installa e attiva Yoast SEO dalla directory dei plugin di WordPress.
  2. Modifica l'articolo o la pagina per cui vuoi impostare un canonical personalizzato.
  3. Scorri verso il basso fino alla metabox Yoast SEO sotto l'editor di contenuti.
  4. Fai clic sulla scheda "Avanzate" (l'icona dell'ingranaggio).
  5. Trova il campo "URL canonical" e inserisci l'URL che desideri venga trattato dai motori di ricerca come originale.
  6. Aggiorna o pubblica l'articolo.

Per le impostazioni canonical a livello di sito, Yoast gestisce tutto automaticamente. Rimuove i parametri URL, applica il formato URL preferito (www o non-www) e genera canonical corretti per gli archivi paginati. In genere non hai bisogno di configurare altro oltre all'installazione del plugin.

Impostare i tag canonical con Rank Math

Rank Math è un altro plugin SEO popolare che gestisce bene i tag canonical. Il processo è simile a Yoast:

  1. Installa e attiva Rank Math.
  2. Modifica un articolo o una pagina.
  3. Fai clic sull'icona Rank Math nell'angolo in alto a destra dell'editor, oppure scorri fino alla metabox Rank Math.
  4. Vai alla scheda "Avanzate".
  5. Inserisci il tuo URL canonical personalizzato nel campo "URL canonical".

Rank Math supporta anche l'auto-canonical per archivi e tassonomie per default. Nelle impostazioni generali, puoi configurare come vengono generati gli URL canonical per i diversi tipi di contenuto.

Aggiungere tag canonical manualmente tramite functions.php

Se preferisci non utilizzare un plugin SEO, o se hai bisogno di tag canonical su un tema personalizzato con requisiti specifici, puoi aggiungerli manualmente tramite il file functions.php del tuo tema:

function custom_canonical_tag() {
    // Rimuovi il canonical predefinito di WordPress per evitare duplicati
    remove_action('wp_head', 'rel_canonical');

    if (is_singular()) {
        $canonical = get_permalink();
        echo '<link rel="canonical" href="' . esc_url($canonical) . '" />' . "\n";
    } elseif (is_category() || is_tag() || is_tax()) {
        $canonical = get_term_link(get_queried_object());
        if (!is_wp_error($canonical)) {
            echo '<link rel="canonical" href="' . esc_url($canonical) . '" />' . "\n";
        }
    } elseif (is_home() || is_front_page()) {
        echo '<link rel="canonical" href="' . esc_url(home_url('/')) . '" />' . "\n";
    }
}
add_action('wp_head', 'custom_canonical_tag');

Questo approccio ti dà il pieno controllo, ma sei responsabile della gestione di ogni tipo di contenuto e caso limite. Per la maggior parte dei siti, un plugin SEO è la scelta più semplice e sicura.

Tag canonical sulle pagine di archivio paginate

Un errore comune è far puntare i tag canonical sulle pagine paginate alla pagina 1. Se hai un archivio del blog che si estende su più pagine, ciascuna pagina deve avere un canonical che punta a se stessa. La pagina 2 deve avere un canonical alla pagina 2, la pagina 3 alla pagina 3 e così via. Si tratta di pagine distinte con contenuti diversi, non duplicati.

Sia Yoast SEO che Rank Math gestiscono correttamente questo aspetto per default. Se implementi i canonical manualmente, assicurati di tenere conto dell'impaginazione:

if (is_paged()) {
    global $wp;
    $canonical = home_url($wp->request) . '/';
    echo '<link rel="canonical" href="' . esc_url($canonical) . '" />' . "\n";
}

Canonical cross-domain

Se lo stesso contenuto esiste su più domini (ad esempio se il tuo articolo viene ripubblicato su un sito partner), puoi utilizzare tag canonical cross-domain per indicare ai motori di ricerca quale dominio contiene la versione originale. Il sito partner includerebbe un tag canonical che rimanda al tuo URL originale.

Tieni presente che i canonical cross-domain sono trattati come un suggerimento, non come una direttiva. Google di solito li rispetta, ma non è garantito. Per la sindacazione dei contenuti, i canonical cross-domain sono la best practice, ma considera anche di aggiungere un link "Originariamente pubblicato su" come segnale aggiuntivo.

Tag canonical vs redirect 301: quale usare

Sia i tag canonical che i redirect 301 indicano ai motori di ricerca che un URL è preferito rispetto a un altro, ma servono a scopi diversi:

  • Usa un redirect 301: Quando vuoi spostarti permanentemente da un URL a un altro e gli utenti non hanno bisogno di vedere mai più il vecchio URL. Ad esempio, dopo aver cambiato lo slug di una pagina o aver unito due pagine.
  • Usa un tag canonical: Quando entrambi gli URL devono rimanere accessibili agli utenti, ma i motori di ricerca devono indicizzare solo una versione. Ad esempio, un prodotto disponibile sia su /shoes/red-sneakers che su /sale/red-sneakers.

Una semplice regola pratica: se gli utenti devono poter visitare entrambi gli URL, usa un canonical. Se il vecchio URL non deve più essere visitato affatto, usa un redirect 301.

Come controllare i tuoi tag canonical

Per verificare che i tuoi tag canonical funzionino correttamente:

  • Scansione InspectWP: Esegui una scansione e visualizza la sezione SEO. InspectWP segnala se un tag canonical è presente e mostra l'URL a cui punta.
  • Visualizza sorgente pagina: Fai clic con il pulsante destro del mouse sulla tua pagina, seleziona "Visualizza sorgente pagina" e cerca rel="canonical". Dovresti trovare esattamente un tag canonical nella sezione <head>.
  • Google Search Console: Lo strumento URL Inspection mostra quale URL canonical Google ha selezionato per una determinata pagina. Se il canonical scelto da Google differisce dal tuo, potrebbero esserci segnali contrastanti.

Debug dei problemi canonical comuni

Se i tuoi tag canonical non funzionano come previsto, controlla questi problemi comuni:

  • Più tag canonical: Se hai un plugin SEO e anche il tuo tema emette un tag canonical, ti ritroverai con due canonical in competizione. I motori di ricerca potrebbero ignorare entrambi. Rimuovi il duplicato disabilitando l'output canonical del tema.
  • Canonical che punta a un 404: Se l'URL canonical restituisce un errore 404, i motori di ricerca lo ignorano. Verifica sempre che l'URL canonical sia una pagina attiva e accessibile.
  • Canonical che punta a un URL reindirizzato: Se il tuo canonical punta a un URL che si reindirizza 301 altrove, i motori di ricerca possono confondersi. Il canonical dovrebbe sempre puntare all'URL di destinazione finale.
  • Canonical auto-referenziali mancanti: Ogni pagina dovrebbe avere un tag canonical auto-referenziale (che punta al proprio URL), anche se non ci sono duplicati noti. Questo protegge da variazioni di parametri URL di cui potresti non essere a conoscenza.

Controlla subito il tuo sito WordPress

InspectWP analizza il tuo sito WordPress per problemi di sicurezza, problemi SEO, conformità GDPR e prestazioni — gratuitamente.

Analizza gratis il tuo sito