Rimozione dei link /2, /3, /4, ecc. per ogni risposta all'interno di un URL di argomento

Mi chiedo se esista un modo per rimuovere completamente i link canonici da un forum Discourse.

Mi riferisco alle estensioni /2, /3, /4, ecc. che compaiono per ogni URL di un argomento mentre un utente scorre la pagina. Vorrei che ogni risposta all’interno di un argomento facesse semplicemente riferimento all’URL originale (senza reindirizzare i visitatori all’URL originale, ma rimuovendo completamente quei percorsi, in modo che non esistano).

Originariamente, pensavo fosse una funzionalità interessante di Discourse, ma avendo gestito un forum simile sul mio sito per un anno con NodeBB (che utilizza la stessa funzionalità di link canonici per ogni risposta), abbiamo scoperto che questa funzionalità può essere catastrofica per la SEO di un forum pubblico.

Perché? Perché anche se questi URL /2, /3, /4 sono link canonici, Google finirà per scansionarli e indicizzarli tutti. Ciò significa che ogni nuova risposta all’interno di un argomento può apparire nei risultati di ricerca di Google e, poiché sono essenzialmente versioni duplicate dell’URL dell’argomento originale, queste pagine indicizzate aggiuntive raramente ricevono visite e, quando le ricevono, i visitatori non rimangono sul sito per più di qualche secondo.

Quando Google indicizza molte pagine aggiuntive e queste pagine non ricevono molta attività, indica a Google che il dominio nel suo complesso ha molti URL di bassa qualità e ciò danneggia la salute generale del dominio (come è successo nel nostro caso). Abbiamo perso circa il 40% del nostro traffico da quando abbiamo lanciato il nostro forum pubblico, e un fattore importante che ha contribuito è stato questi URL aggiuntivi (oltre 30.000 URL di bassa qualità sono stati aggiunti alla nostra sitemap nel corso di 12 mesi, semplicemente a causa delle risposte lasciate in ogni argomento).

Ora, se gestisci un forum privato, nulla di tutto ciò ha importanza, perché un forum privato non beneficia di alcun tipo di SEO poiché l’intero forum è nascosto da Internet. Ma se stai cercando di gestire un forum pubblico e il tuo obiettivo è ottenere traffico organico dai motori di ricerca, queste stringhe URL aggiuntive possono avere un enorme impatto negativo sulla salute generale del tuo sito.

Quindi, mi chiedo, c’è un modo concepibile per modificare le impostazioni o creare un plugin che dica a un forum Discourse di NON creare questi URL aggiuntivi per ogni risposta all’interno di un argomento?

Sto pensando di migrare il nostro forum da NodeBB a Discourse, ma ciò avrà senso solo se c’è un modo per far sì che il nostro forum Discourse NON crei questi URL aggiuntivi.

3 Mi Piace

Questo è emerso un po’ prima: Google indexing same page multiple times: Issue with canonicals

come sei stato in grado di determinare che questo era un contributore significativo? molti post SEO fatti qui sono stati piuttosto speculativi, quindi alcune prove fanno molta strada!

Non ho esperienza con questo plugin e non posso garantirlo personalmente, ma qualcuno ha tentato di disabilitare completamente i link canonici con un plugin in precedenza: Remove Canonical Link Plugin

7 Mi Piace

\u003e Questo è già emerso in precedenza: Google indicizza la stessa pagina più volte: problema con i canonical \n\nSe sto seguendo correttamente questa conversazione, sembra che si riferisca a un problema leggermente diverso da quello di cui sto parlando sopra. Non è un problema creare URL canonici multipli per un argomento se sono raggruppati per 20 risposte alla volta e hanno meta descrizioni uniche (pagina=2, pagina=3, ecc.). Il problema è quando viene creato un nuovo URL per ogni singola risposta all’interno di un argomento (/2, /3, /4, ecc.).\n\nPer un argomento con 100 risposte, il primo caso risulterebbe in 5 URL per argomento (100 risposte raggruppate in multipli di 20). Il secondo caso risulterebbe in 100 URL per argomento (un nuovo URL individuale per ogni singola risposta), il che crea un grosso problema SEO.\n\n\u003e come sei stato in grado di determinare che questo fosse un contributo significativo? molti post SEO fatti qui sono stati piuttosto speculativi, quindi qualche prova fa molta strada!\n\nCon strumenti come Google Search Console, SEMrush e Ahrefs. Tutti hanno evidenziato avvisi ed errori derivanti dal numero enorme di URL sul nostro sito che venivano creati da queste risposte ai thread del forum, tutti indicizzati da Google senza fornire contenuti nuovi sostanziali. I punteggi di salute erano tra 30 e 40 quando il nostro forum era pubblico. Una volta bloccato l’intero forum e reso privato (in modo che Google non potesse vederlo) e rieseguito i test, il nostro punteggio di salute è salito all’80 solo da questa modifica.\n\n\u003e Non ho esperienza con questo plugin e non posso garantirlo personalmente, ma qualcuno ha tentato di disabilitare completamente i link canonici con un plugin in precedenza: Plugin Rimuovi Link Canonici\n\nHo trovato anche questo. Sfortunatamente, questo plugin in realtà peggiora la situazione, perché rimuove semplicemente i tag canonici, pur mantenendo le pagine /2, /3, ecc., quindi questi URL aggiuntivi sono ancora visti come contenuto duplicato di bassa qualità.

3 Mi Piace

Vale la pena notare che è nella nostra roadmap aggiungere un header X-Robots-Tag: noindex al payload di risposta di quelle pagine.

10 Mi Piace

Buono a sapersi. Sembra un grande passo nella giusta direzione.

Per quello che vale, abbiamo effettivamente visto alcuni casi nel nostro attuale forum (quando era ancora pubblico) in cui avevamo aggiunto il file robots.txt a determinate sottocartelle del nostro forum, e Google li stava comunque indicizzando. Credo che questo sia altamente irregolare… ma la nostra scoperta è stata che ci sono alcuni casi in cui Google non segue questa direttiva. L’unico modo per essere sicuri al 100% che una pagina non venga indicizzata è che la pagina sia nascosta dietro una schermata di accesso o che la pagina non esista affatto.

Dalla prospettiva di un estraneo, sembra che dovrebbe essere semplice dire a Discourse di non fare lo sforzo aggiuntivo di creare questi URL aggiuntivi per ogni risposta. Il software farebbe meno lavoro e creerebbe meno complessità in questo modo, non credi?

Sarebbe bello avere una funzione nelle impostazioni di amministrazione per disattivare semplicemente questi URL aggiuntivi del tutto.

1 Mi Piace

Sì, in questo modo utilizzeremo il tag dell’intestazione invece di inserirli nel file robots.txt.

3 Mi Piace

Non sono sicuro di capire cosa sta succedendo qui.

Perché Discourse sta facendo la prima cosa: crea tag meta URL canonici ?page=X per gruppi di 20 risposte. E come puoi vedere qui, i numeri dei post non vengono mai aggiunti agli URL della sitemap, solo gli URL ?page=X vengono aggiunti.

Quindi ti stavo per dire che non c’è nessun problema.

Ma poi ho fatto una ricerca su Google per un argomento con molte risposte e sebbene la pagina 2 di quei risultati di ricerca sia piena di link ?page=X, alcuni dei primi risultati rimandano in realtà a quelle risposte numerate.

Ma perché sta succedendo questo? Quella pagina ha un URL canonico corretto.

rgj@labgate:~$ wget -q -O - "https://meta.discourse.org/t/babble-a-chat-plugin/87297/418"|grep -e "<title" -e canonical
<title>Babble - A Chat Plugin - #418 by HAWK - broken-plugin - Discourse Meta</title>
<link rel="canonical" href="https://meta.discourse.org/t/babble-a-chat-plugin/87297?page=20" />

3 Mi Piace

Non lo so.

La mia ipotesi è che quei link appaiano altrove nel web, quindi siano quelli che vengono indicizzati?

1 Mi Piace

Il canonical serve a impedire che ciò accada. Almeno - in teoria.

4 Mi Piace

Ho avuto una lunga discussione su questo con una community incentrata sui blog qui in Brasile che utilizza Discourse, ed è ciò che mi ha spinto a provare questo nuovo approccio inviando l’header noindex per quelle pagine specifiche dei post. Dovrei essere in grado di ripulire e unire il PR per quello la prossima settimana e potremo iniziare a sperimentare.

7 Mi Piace

Ma perché sta succedendo? Quella pagina ha un URL canonico corretto.

Esattamente. Non dovrebbe succedere (in teoria) ma succede, e come abbiamo sperimentato con il nostro sito, può davvero danneggiare il punteggio di salute di un dominio, il che alla fine può avere un impatto negativo sull’intero posizionamento di ricerca del dominio.

Per quanto riguarda ciò che ha detto @pfaffman,

La mia ipotesi è che quei link appaiano altrove nel web, quindi sono quelli che vengono indicizzati?

Questo sarebbe stato anche il mio pensiero… ma abbiamo visto che decine di migliaia di queste singole risposte sul nostro sito venivano indicizzate da Google anche se assolutamente nulla vi rimandava. È piuttosto bizzarro e non posso fingere di capire perché/come stia succedendo, ma sottolinea la necessità che un amministratore del forum abbia semplicemente la possibilità di disattivare questi URL /2, /3, /4, ecc. per ogni risposta, se lo desidera.

Sono curioso, è difficile dare a Discourse questa capacità? Dal mio punto di vista di non programmatore, sembra che dovrebbe essere facile, dato che si tratta solo di dire al software di non fare così tanto lavoro… ma forse c’è qualcosa di più che non capisco?

2 Mi Piace

Non sono sicuro, ma applicare noindex a quelle potrebbe essere dannoso. Discourse lo sta già gestendo correttamente utilizzando URL canonici.

Se applichi noindex, c’è la possibilità che venga applicato noindex all’intera pagina (perché sono tutti URL canonici uguali), il che sarebbe disastroso. Non so con certezza cosa succederà, ma sarei estremamente cauto, perché Google spesso gestisce i casi limite in modo imprevedibile e il modo in cui li gestisce può cambiare con gli aggiornamenti. Ho visto cose strane accadere con i tag canonici.

Non si sa esattamente come funziona l’algoritmo di ranking, e cambia nel tempo, ma un’altra cosa da considerare è che i ranking sono il risultato dei link in entrata. Se un sito esterno linka a un URL /number, e quell’URL restituisce l’header noindex, è concepibile che Google non trasferisca il “link juice” in entrata all’URL canonico, il che potrebbe essere dannoso per il posizionamento nei motori di ricerca dei siti Discourse.

Penso che sarebbe molto più sicuro contattare qualcuno di Google Search e fargli sapere che il tag canonico non funziona per un CMS ampiamente utilizzato piuttosto che cercare di trovare una soluzione alternativa che potrebbe non essere gestita allo stesso modo mentre Google rilascia ulteriori aggiornamenti.

6 Mi Piace

No, sottolinea la necessità di sistemare le cose. Come ingegnere del software, trovo molto difficile rimuovere funzionalità perché non funzionano al 100% correttamente. Vediamo se possiamo aiutare e arrivare al fondo di questo invece.

Sei sicuro? Non ho mai visto un numero di post in una sitemap.

3 Mi Piace

Ecco perché sarà sotto un’impostazione del sito.

5 Mi Piace

Grazie per aver sollevato la questione. “Sitemap” è stata probabilmente la parola sbagliata da usare. Quello che intendevo era che questi post numerati venivano sottoposti a scansione e indicizzati da Google e apparivano come pagine individuali in Google Analytics e Search Console, con il risultato di MOLTE pagine di bassa qualità sul nostro dominio.

Se questi numeri non fossero semplicemente stati aggiunti a ogni singola risposta, Google sarebbe stato in grado di vedere solo l’URL del post originale.

2 Mi Piace

Sì, e se Google rispettasse quei tag meta rel="canonical" (che hanno inventato!) che sono stati inseriti appositamente per impedire a Google di fare questo, non sarebbe un problema e saremmo ancora in grado di collegarci a un post specifico allo stesso tempo.

7 Mi Piace

Va bene. Sarebbe ideale se fosse disattivato per impostazione predefinita, perché non è inconcepibile che possa causare la scomparsa delle pagine degli argomenti da Google o da altri motori di ricerca.

Non sono sicuro se sia già stato menzionato, ma un altro modo per risolvere il problema senza noindex potrebbe essere quello di utilizzare frammenti di URL per i post, poiché quelli non dovrebbero essere conteggiati come pagine separate.

/t/slug/id#13
5 Mi Piace

Grazie per il suggerimento. Mi piacerebbe pensare che funzionerebbe… ma visto che il metodo originale “corretto” non funziona nemmeno, sono scettico che qualsiasi cosa possa risolvere il problema se non eliminare del tutto le risposte numerate.

Naturalmente, non sto dicendo che TUTTI gli utenti di Discourse dovrebbero smettere di usarle. Ehi, se non fosse per Google che è stupido (e/o se intendessimo che il nostro forum fosse privato e non pubblico), sarei totalmente a favore… ma avere semplicemente l’opzione per disattivare la numerazione automatica delle risposte sarebbe di grande aiuto per coloro che gestiscono forum pubblici e si preoccupano della salute SEO generale del loro dominio.

1 Mi Piace

Ciò rimuoverebbe la possibilità di collegarsi a post specifici. Non ci sarebbe modo di collegarsi al post n. 789 in un argomento di 1.000 post, e sarebbe fastidioso per gli utenti dover scorrere così tanto.

È strano. Ho cercato su Google per vedere se gli URL degli ID dei post venivano indicizzati sui miei forum, e solo gli URL canonici vengono visualizzati su tutti gli argomenti che ho controllato.

Lo vedo però su un altro grande sito Discourse. Appare anche in questo argomento. [Query di Google]

Ho eseguito un diff sulle due risposte in questo modo:

curl -s https://meta.discourse.org/t/removing-the-2-3-4-etc-links-for-each-reply-within-a-topic-url/209648 > 1.html
curl -s https://meta.discourse.org/t/removing-the-2-3-4-etc-links-for-each-reply-within-a-topic-url/209648/8 > 2.html
nvim -d 1.html 2.html

Una differenza che spicca è che article:published_time è diverso, anche se probabilmente dovrebbe essere lo stesso, poiché le pagine sono altrimenti quasi identiche. Mi chiedo se quel metatag possa far ignorare a Google l’URL canonico. Un dipendente di Google afferma che gli URL canonici possono essere ignorati in alcuni casi qui.

<meta property="article:published_time" content="2021-11-19T15:57:21+00:00" />
<meta property="article:published_time" content="2021-11-20T06:48:06+00:00" />

Inoltre, il tag ignore_canonical è esclusivo di Discourse o c’è la possibilità che Google lo stia seguendo? L’ho visto nell’HTML.

<meta property="og:ignore_canonical" content="true" />
3 Mi Piace

Potrebbe essere leggermente più fastidioso, ma se gli URL page=2, page=3, ecc. funzionassero ancora (il che non crea davvero un problema SEO come fanno le risposte numerate), potresti almeno collegare una persona alla pagina corretta all’interno di una conversazione. Questo la porterebbe per la maggior parte della strada, a condizione che sia disposta a scorrere un po’.

Un forum che funziona in questo modo è BiggerPockets. Le loro risposte non hanno URL numerati individualmente, ma gli argomenti hanno pagine numerate, come questa: Kids throwing rocks at windows nearly everyday. Won't stop. (prendi nota dell’URL mentre scorri ogni argomento e pagina).

Il loro forum è sempre stato una componente principale di ciò che rende il sito così speciale e di successo dal punto di vista SEO, quindi è un buon esempio di ciò che funziona.

Interessante. Non ho idea se questo stia causando il problema o meno, ma posso vedere come l’incoerenza possa confondere Google al punto da ignorare l’URL canonico.

Anche così, con la natura di come funzionano i forum, a meno che tu non volessi rimuovere completamente le date e le tempistiche di ogni argomento, non potresti eliminarlo, vero? Tenere conto delle date e delle ore di ogni post e risposta è una parte integrante di come funzionano i forum.

1 Mi Piace