Una pulizia contenuti SEO fatta senza una lista verificata cancella anche quello che non dovrebbe. Su 100 articoli eliminati in una bonifica recente, 8 erano pezzi integri: nessun duplicato, nessun problema di qualità. Erano semplicemente nel posto sbagliato al momento sbagliato.
La bonifica di massa sembra l’operazione più semplice del ciclo di vita di un sito: individui i duplicati, li cestini, il crawler ringrazia. In realtà è una delle operazioni più rischiose se non hai un processo. Quello che segue è la cronaca precisa di cosa è andato storto, perché è andato storto, e come si costruisce la guardia che impedisce di rifarlo.

Il problema: 92 duplicati e una lista imprecisa
Il punto di partenza era un sito con contenuti duplicati distribuiti su più lingue. Il numero di articoli da rimuovere era 92. Numero alto, processo manuale, pressione a chiudere il lavoro in fretta.
La lista di eliminazione era stata costruita a colpo d’occhio: titoli simili, slug sovrapponibili, date ravvicinate. Nessuna verifica id per id sul database. Otto articoli con id diverso ma titolo visivamente simile ai duplicati sono finiti nel cestino insieme agli altri.
Il danno peggiore non erano gli 8 pezzi in sé. Era che tra quegli 8 c’erano gli articoli pilastro del topic principale del sito, declinati in tre lingue. Topic pilastro + tre versioni linguistiche = sparito completamente dall’indice nel giro del crawl successivo.
Un’eliminazione senza lista verificata id per id non è una bonifica: è un’operazione a occhi chiusi su un archivio che non puoi rileggere in tempo reale.
Perché succede anche ai siti gestiti bene
Il problema non è la distrazione. È il metodo. Quando hai 92 righe da spuntare, il cervello inizia a fare pattern matching visivo — titolo simile, via. Non legge l’id del post, non controlla se quell’url è in sitemap, non verifica se ha backlink o traffico. Legge la forma del titolo e decide.
Su 100 decisioni così, 8 errori è un tasso del 8%. In un’operazione di revisione del codice o di deploy in produzione, l’8% di errori blocca il progetto. In una bonifica SEO fatta a mano, passa inosservato finché Google non aggiorna il crawl.
Il salvataggio: il cestino di WordPress regge 30 giorni
WordPress manda i post cestinati in uno stato trash, non li elimina definitivamente. Il periodo di retention è 30 giorni dall’azione di cestinazione, dopodichè la cancellazione è permanente salvo backup.
In questo caso il cestino era ancora pieno. Recupero mirato degli 8 id, ripristino a publish, verifica manuale degli url. Zero perdita di dati, ma due settimane di calo di visibilità sul topic prima che il crawler indicizzasse di nuovo le pagine ripristinate.
Come si fa il ripristino mirato
Dal pannello WordPress: Articoli → Cestino. Filtra per data di cestinazione se la lista è lunga. Cerca per id o per frammento di titolo. Clicca «Ripristina» sul singolo post. Se hai accesso diretto al database, la query è più rapida:
UPDATE wp_posts SET post_status = 'publish' WHERE ID IN (101, 247, 388) AND post_status = 'trash';
Dopo il ripristino: controlla il permalink, verifica che il post sia incluso nel sitemap, fai un fetch manuale in Google Search Console se il topic è critico.

Come si fa una pulizia contenuti SEO senza fare vittime
Il processo che funziona ha tre fasi prima di toccare qualsiasi articolo.
Fase 1: esporta tutto prima di cancellare
Strumenti → Esporta → tutti i contenuti. Il file XML di WordPress contiene id, titolo, status, slug e data per ogni post. Con quello in mano hai una fotografia dello stato pre-bonifica. Se qualcosa va storto, puoi confrontare l’export con quello che trovi nel database e capire esattamente cosa hai perso.
L’export si fa in 30 secondi. Non farlo è la scelta più costosa che puoi fare prima di una bonifica.
Fase 2: costruisci la lista id per id
La lista di eliminazione deve contenere l’id WordPress di ogni post, non solo il titolo o lo slug. Perché? Perché il titolo può cambiare, lo slug può essere riciclato, ma l’id è immutabile finché il post esiste.
Come si ottengono gli id? Tre modi:
- Export XML (campo
post_idnei metadati) - Screaming Frog con crawl del sito e colonna
Addressfiltrata per url pattern dei duplicati - Query diretta su
wp_postsdovepost_title LIKE '%keyword%'— veloce ma richiede accesso al database
Una volta che hai gli id, incrociali con una fonte di traffico reale. Google Analytics o Search Console: se un post ha impressioni o sessioni negli ultimi 90 giorni, non è un duplicato innocuo. Va analizzato prima di essere cancellato, non dopo.
Fase 3: verifica incrociata prima di eseguire
Prendi la lista degli id da cancellare. Incrociarla con:
- Il sitemap attuale (se l’url è in sitemap, è indicizzato)
- I backlink esterni (Ahrefs o Search Console: link che puntano a quell’url)
- La struttura di internal linking (se altri articoli linkano a quell’url, cancellarlo crea link rotti)
Questo incrocio trasforma una lista di 92 id in una lista di 92 righe con tre colonne in più: «in sitemap», «ha backlink», «ha link interni». Qualsiasi riga con almeno un «sì» merita un secondo passaggio prima della cancellazione.
La pulizia contenuti SEO non è un’operazione di volume. È un’operazione di precisione chirurgica su un grafo di pagine connesse.
Automatizzare la bonifica senza perdere il controllo
Se gestisci siti con centinaia di articoli, fare questo processo a mano ogni volta non scala. La soluzione non è togliere le verifiche: è automatizzare le verifiche, non le cancellazioni.
Un flow in n8n o Make può fare questo lavoro preparatorio in modo affidabile: prende il crawl di Screaming Frog o l’output di una query sul database, lo incrocia con i dati di Search Console via API, e produce un foglio Google con la lista pre-qualificata. Le cancellazioni le fai tu, con la lista già pulita davanti.
Se vuoi approfondire come costruire questo tipo di automazione per la gestione operativa di un’agenzia, la logica di base è la stessa descritta nella guida su come automatizzare un’agenzia per scalare senza assumere: prima definisci il processo, poi scegli il tool. Il tool di automazione che usi per collegare Search Console API, Screaming Frog e Google Sheets può essere n8n o Make — la scelta dipende da dove hai già l’infrastruttura.
La guardia che non puoi togliere, anche con il processo automatizzato, è questa: nessuna cancellazione in bulk senza export verificato. L’automazione prepara la lista. La cancellazione è sempre un’azione deliberata su una lista approvata.
Cosa rimane dopo la bonifica
Quando la pulizia contenuti SEO è fatta bene, il sito emerge con meno pagine ma con un grafo più pulito. Il crawler spende il budget su pagine che hanno senso. Il topic authority si consolida su meno url, con più segnali ciascuno.
Quello che non recuperi facilmente sono le settimane di visibilità persa mentre Google rielabora le modifiche. Per questo il timing conta: una bonifica fatta nel mese prima di un lancio importante è una scelta pessima. Pianificala in un periodo piatto, monitora Search Console nei 30 giorni successivi, e tieni il cestino integro per tutto il periodo di osservazione prima di svuotarlo definitivamente.
Per approfondire la parte tecnica della gestione dei contenuti duplicati, la documentazione ufficiale di Google su come consolidare gli url duplicati è il punto di partenza corretto. Per la gestione del cestino e delle operazioni bulk su WordPress, la REST API di WordPress permette di automatizzare il ripristino in modo più controllato di un click nel pannello.
Otto articoli su cento non è un numero piccolo. È la differenza tra una bonifica riuscita e una bonifica che genera un secondo round di lavoro per riparare il primo. Il processo esiste per evitare quel secondo round.
Domande frequenti
Quanto tempo ho per ripristinare un articolo cancellato su WordPress?
WordPress conserva i post nel cestino per 30 giorni. Passati i 30 giorni, la cancellazione diventa permanente, salvo che tu abbia un backup del database. Se hai accesso diretto al database, un backup recente ti permette di recuperare anche post eliminati definitivamente.
Come identifico i contenuti duplicati prima di cancellarli?
Screaming Frog con la funzione «Duplicate Content» individua le pagine con contenuto sostanzialmente identico. Incrocia l’output con Search Console per vedere quali url hanno traffico o impressioni: quelli non si toccano senza un’analisi separata.
La pulizia contenuti SEO migliora davvero il posizionamento?
Dipende dal tipo di duplicazione. I duplicati che erodono il crawl budget su siti grandi hanno un impatto reale. Su siti piccoli, l’effetto è meno immediato. Il beneficio principale è la pulizia del grafo interno: meno pagine in competizione tra loro sulle stesse keyword.
Devo fare un redirect 301 quando cancello un articolo duplicato?
Se l’articolo ha backlink esterni o è indicizzato con traffico, sì. Il redirect 301 verso la versione canonica preserva il segnale di link. Se il duplicato non ha né backlink né traffico organico, un 410 è più pulito: comunica a Google che la pagina è stata rimossa intenzionalmente.


