Canonical mancante.... 
Auteur : Alberto B.
Visité 362,
Followers 2,
Partagé 0
Ciao a tutti
Testando il nostro sito con il software "screaming frog" ci segnala come errore di entità media il "canonical mancante" su molte pagine, direi tutte, è possibile che la versione di w.s. 2025.1.7 non lo faccia automaticamente ?
Posté le
... normalmente è solo un avviso innocuo, riferito alla rilevazione di pagine con contenuti possibilmente uguali o duplicati, in genere su pagin con url simile per esempio nomesito.it/
oppure nomesito.it/index.html (.php)...
... puoi fare come detto qui:
Come si impostano nel codice delle Pagine le annotazioni relative alle URL Desktop e Mobile? : WebSite X5 Guide
... oppure aggiungi direttamente il relativo tag link rel canonical in Esperto|/HEAD
.
ciao
.
Auteur
Grazie KOL, quindi dovrò inserire del codice nelle pagine che potrebbero richiederlo come scritto nella guida, non su tutte...
... sì, puoi fare come detto nella Guida:
>> Nel campo Codice personalizzato selezionare l'opzione Prima della chiusura del tag HEAD e scrivi la seguente annotazione:
<link rel="canonical" href="http//www.miosito.it/[CURPAGE]">
... oppure come si fa genericamente per la INDEX:
<link rel = "canonical" href = "https://www.nomesito.com/index.html" />
... come al solito ... da copiare ed incollare in questa sezione:
>> Passo 3 - Mappa > Proprietà Pagina HOME/index > Sezione Esperto | ▪Codice personalizzato: opzione >> Dopo l'apertura del tag HEAD
.
ciao
.
ps: .. non ho mai provato, ma per logica penso che il tag con [CURPAGE] ...possa essere messo al Passo_1 così si attiverebbe per tutte le pagine con o senza del problema duplicazione...
... con un click puoi fare la prova e verificare...
.
.
ps: .. non ho mai provato, ma per logica penso che il tag con [CURPAGE] ...possa essere messo al Passo_1 così si attiverebbe per tutte le pagine con o senza del problema duplicazione...
... con un click puoi fare la prova e verificare...
.
Auteur
Ok provo, pubblico e poi scrivo qui il risultato
... OK ... le verifiche la farai tu con gli strumenti che conosci; ...fai sapere com'è andata ... ciao
Ciao Alberto. Premettendo che provare non nuoce al limite si corregge.....il codice secondo me va messo nella sezione “Dopo l’apertura del tag HEAD” (Passo 3 > Mappa > Proprietà pagina > Sezione Esperto).
Infatti il codice che crea dinamicamente il tag <link rel="canonical"> deve essere eseguito subito, prima che il browser inizi a interpretare il contenuto <body>. Inserendolo dopo l’apertura del tag HEAD, il browser lo legge prima di chiudere il tag <head> e quindi lo considera parte del documento HTML, come se fosse stato scritto staticamente. A mia modesto parere se lo metti prima della chiusura del tag HEAD, il browser potrebbe già aver caricato parte del DOM, e il tag <link> potrebbe essere interpretato troppo tardi per influenzare correttamente la SEO o il comportamento dei motori di ricerca.
Attenzione! Funziona solo se il software lo interpreta correttamente in quel contesto. Alcuni tag dinamici non vengono elaborati in tutte le sezioni.
Nel Passo 1 > Impostazioni generali > Codice personalizzato il tag [CURPAGE] sempre secondo me potrebbe non essere interpretato correttamente, perché quella sezione è globale e non legata a una singola pagina.
Al limite potresti provare una soluzione tecnica che ti permette di generare dinamicamente il tag <link rel="canonical"> per ogni pagina, senza usare [CURPAGE], ma sfruttando JavaScript per rilevare l’URL corrente e inserirlo nel <head> in automatico tipo:
<script>
(function() {
var canonical = document.createElement('link');
canonical.rel = 'canonical';
canonical.href = window.location.href.split('?')[0]; // rimuove eventuali parametri
document.head.appendChild(canonical);
})();
</script>
Da inserire dopo l’apertura del tag HEAD” (Passo 3 > Proprietà pagina > Sezione Esperto)
Il codice JavaScript che ti ho proposto rileva l’URL corrente della pagina direttamente dal browser, quindi funziona indipendentemente dal nome del dominio, dal protocollo (http o https), o dal percorso della pagina.
Ecco cosa fa in pratica:
window.location.href prende l’URL completo della pagina attuale.
.split('?')[0] rimuove eventuali parametri (es. ?id=123) per evitare duplicazioni SEO.
Il risultato viene inserito nel <head> come tag <link rel="canonical">.
Funziona su qualsiasi pagina del sito, senza doverlo scrivere manualmente. È dinamico e automatico, utile per evitare contenuti duplicati.
Auteur
Grazie KOL e Roberto per i consigli, ho messo il codice script di Roberto nella sezione "impostazione Sito" "statistiche e codice" "codice" dopo l'apertura del tag HEAD, ma ho notato che il risultato "canonical" è ancora mancante, forse dovevo inserire lo script per ogni pagina ?
Ciao Alberto. Lo script che hai inserito funziona lato browser: quando la pagina è caricata, aggiunge il <link rel="canonical">. Tuttavia, i crawler di Google non sempre eseguono o attendono lo script prima di analizzare il codice. Risultato: Google non trova il canonical o lo segnala come mancante/errato.
Io senza fasciarmi troppo la testa utilizzerei la soluzione corretta e riconosciuta da Google è che ogni pagina abbia il proprio tag <link rel="canonical"> con l’URL giusto di quella pagina.
Esempio:<link rel="canonical" href="https://www.tuosito.it/pagina-specifica.html">
L’href deve puntare all’URL “ufficiale” che vuoi far indicizzare (senza parametri, senza duplicati).
Non puoi usare un unico canonical globale per tutte le pagine, perché Google lo interpreterebbe come contenuto duplicato e consoliderebbe tutto su un solo URL.
Il codice va inserito nelle proprietà di pagina dopo l'apertura del teg HEAD.
Va detto che nei CMS diversi da Builder Incomedia il codice puoi inserirlo una sola volta nel template globale, ma con una variabile che richiama automaticamente l’URL della pagina (così viene generato in automatico per tutte).
ciao, ...ti consiglio di vedere anche la mia considerazione(...!...) qui, vecchia, ma sempre attuale:
https://helpcenter.websitex5.com/fr/post/215433#comment5
.
ciao
.
Auteur
Si ok ora capisco meglio, alla fine mi consigliate entrambi di inserire per ogni pagina il link "canonical"
Esempio:<link rel="canonical" href="https://www.tuosito.it/pagina-specifica.html">
volevo evitarlo... ma pazienza metterò uno-per-uno...
... da parte mia ti sconsigliavo js script EXTRA, anche se lo avevo rilevato diversi anni fa, ma ancora attuale...
... sì puoi anche fare come hai detto
...!..., in teoria però, il suggerimento della FAQ che ti ho linkato cui [CURPAGE] dovrebbe essere valido per tutte le pagine...!...
... se fai una prova potresti saperlo subito con gli strumenti di controllo online che usi tu...
.
ciao
.
Auteur
si ho tolto lo script di Roberto ed inserito il codice "CURPAGE" suggerito secondo la tua indicazione il Programma "screaming frog" mi da errore grave: canonical trasformato in canonical, forse è meglio se metto i "canonical" uno per uno
... se hai notato questa discrepanza, mi sembra strano, ... ed allora ti conviene quindi fare manualmente come detto prima e come avevi intenzione di fare, l'importante è trovarne la quadra...
.
Auteur
Si ho fatto così alla fine ...
... OK ... ciao ...