WebSite X5Help Center

 
Alberto B.
Alberto B.
User

Canonical mancante....  it

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
16 RéPONSES - 1 CORRECT
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... 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

.

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Alberto B.
Alberto B.
User
Auteur

Grazie KOL, quindi dovrò inserire del codice nelle pagine che potrebbero richiederlo come scritto nella guida, non su tutte...

Lire plus
Posté le de Alberto B.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... 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...

.

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

.

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...

.

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Alberto B.
Alberto B.
User
Auteur

Ok provo, pubblico e poi scrivo qui il risultato wink

Lire plus
Posté le de Alberto B.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ... le verifiche la farai tu con gli strumenti che conosci; ...fai sapere com'è andata ...  ciao

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Roberto M.
Roberto M.
User

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.

Lire plus
Posté le de Roberto M.
Alberto B.
Alberto B.
User
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 ?

Lire plus
Posté le de Alberto B.
Roberto M.
Roberto M.
User

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).

Lire plus
Posté le de Roberto M.
Alberto B.
Alberto B.
User
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...

Lire plus
Posté le de Alberto B.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... 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

.

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Alberto B.
Alberto B.
User
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

Lire plus
Posté le de Alberto B.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... 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...wink

.

Lire plus
Posté le de  ‪ KolAsim ‪ ‪
Alberto B.
Alberto B.
User
Auteur

Si ho fatto così alla fine ...cool

Lire plus
Posté le de Alberto B.
 ‪ KolAsim ‪ ‪
 ‪ KolAsim ‪ ‪
Moderator

... OK ... ciao ...

Lire plus
Posté le de  ‪ KolAsim ‪ ‪