Skip to content

Tutto per WordPress, lo sviluppo web — e non solo

🔍 Come trovare e sostituire il testo in tutto il tuo sito WordPress

🔍 Come trovare e sostituire il testo in tutto il tuo sito WordPress

Stai scrivendo un articolo su WordPress da mezz'ora, le dita volano, i pensieri scorrono. Premi pubblica e… noti che hai scritto male il nome di un plugin. Non in un punto solo. In tutto il testo. Poi ricordi: hai scritto quel nome allo stesso modo negli ultimi sei mesi in un centinaio di altri articoli.

Aprire ogni articolo manualmente e dare la caccia agli errori di battitura? Forse se sono cinque. Ma se fossero cinquecento?

WordPress non offre un pulsante "trova e sostituisci" di default, né nell'editor, né a livello di database. Ma si può risolvere con plugin gratuiti e uno snippet di codice. Niente phpMyAdmin, niente query SQL dirette, nessun rischio di mandare in crash il sito con un comando sbagliato.

💡 Panoramica rapida:

  • Aggiungi trova e sostituisci direttamente nell'editor: il plugin Advanced Editor Tools aggiunge un pulsante Trova e Sostituisci all'editor visuale in 2 minuti
  • Sostituisci testo nell'intero database: Better Search Replace cerca e sostituisce stringhe in tutte le tabelle con anteprima e supporto per dati serializzati
  • Imposta regole di sostituzione automatica: Real-Time Find and Replace scambia il testo "al volo" quando la pagina viene renderizzata, senza toccare il database
  • Aggiungi link automatici per parola chiave: una funzione PHP in functions.php racchiude parole specifiche in link su tutti gli articoli in una volta sola

Il video qui sotto mostra la funzione trova e sostituisci nei contenuti WordPress:

Cercare e sostituire testo nell'editor di WordPress

L'editor classico di WordPress non ha un pulsante "Trova e Sostituisci", a differenza di Google Docs, Word e quasi qualsiasi altro elaboratore di testi. Nemmeno l'editor a blocchi Gutenberg ce l'ha. Ma puoi aggiungerlo.

Il plugin Advanced Editor Tools gestisce questa funzione (in passato si chiamava TinyMCE Advanced). Estende la barra degli strumenti dell'editor visuale e uno dei pulsanti disponibili è proprio Trova e Sostituisci.

Pulsante trova e sostituisci nell'editor visuale di WordPress

L'installazione è standard: "Plugin" → "Aggiungi nuovo" → cerca "Advanced Editor Tools" → "Installa" → "Attiva". Dopo l'attivazione:

  • Vai su Impostazioni → Advanced Editor Tools
  • Trova Trova e Sostituisci tra i pulsanti non utilizzati
  • Trascinalo sulla barra degli strumenti dell'editor
  • Salva le modifiche

Fatto. Ora, quando modifichi un articolo nell'editor visuale, in alto compare un pulsante trova e sostituisci. Inserisci il testo da cercare, inserisci la sostituzione, il plugin evidenzia le corrispondenze e puoi sostituire una alla volta o tutte insieme.

Lo svantaggio: funziona solo all'interno di un singolo articolo. Se devi passare in rassegna centinaia di articoli, ti serve uno strumento più potente.

Cercare e sostituire nell'intero database con Better Search Replace

Quando un errore è sparso su decine o centinaia di record, modificare manualmente ogni articolo diventa un lavoro di una settimana. Per questo esiste Better Search Replace, un plugin gratuito di WP Engine che cerca e sostituisce il testo direttamente nel database di WordPress.

Interfaccia cerca e sostituisci di Better Search Replace in WordPress

Caratteristiche:

  • Cerca nell'intero database o in tabelle selezionate (wp_posts, wp_postmeta, ecc.)
  • Supporto per dati serializzati: il plugin gestisce correttamente array e oggetti senza romperli
  • Modalità Dry Run: un'esecuzione di prova senza apportare modifiche; vedi quante celle saranno interessate, poi decidi se applicare la sostituzione
  • Supporto Multisito

Come funziona: "Strumenti" → "Better Search Replace" → inserisci la stringa da cercare e la stringa sostitutiva → seleziona le tabelle → esegui Dry Run → verifica il risultato → se tutto sembra a posto, deseleziona Dry Run ed esegui la sostituzione effettiva.

Prima di qualsiasi operazione sul database, fai un backup. Better Search Replace non annulla le modifiche. Se sbagli la stringa di sostituzione, puoi ripristinare i dati solo da un backup.

Il plugin è aggiornato regolarmente: la versione 1.4.10 è stata rilasciata a gennaio 2025. L'autore è il team di WP Engine, con 543 recensioni su WordPress.org e una valutazione media superiore a 4 stelle. Le installazioni attive superano il milione.

Sostituzione automatica del testo al volo con Real-Time Find and Replace

A volte non ti serve una correzione una tantum di un refuso, ma una regola permanente: per esempio, sostituire parolacce nei commenti, scambiare un segnaposto pubblicitario con codice JavaScript o correggere automaticamente il nome di un servizio che ha cambiato brand in tutte le pubblicazioni esistenti e future.

Word Replacer gestiva questa funzione, ma il plugin è chiuso e non viene aggiornato da 12 anni. L'alternativa attuale è Real-Time Find and Replace.

Interfaccia delle regole di Real-Time Find and Replace in WordPress

Come funziona: il plugin scambia il testo nel momento in cui la pagina viene renderizzata, prima che raggiunga il browser dell'utente. Il database rimane invariato. Tutte le regole risiedono nelle impostazioni del plugin e puoi disabilitare o modificare qualsiasi regola in qualsiasi momento senza conseguenze.

Cosa può fare la versione gratuita:

  • Sostituire testo e codice HTML per corrispondenza esatta
  • Supportare le espressioni regolari (regex) per pattern complessi
  • Sostituire contenuti in temi e altri plugin senza modificarne i file
  • Funzionare con contenuti AJAX e contenuti caricati via jQuery
  • Oltre 70.000 installazioni attive, testato fino a WordPress 7.0

La versione Pro (licenza a vita a meno di 15$) aggiunge filtri per tipo di articolo, URL e referrer, importazione/esportazione delle regole e la possibilità di sostituire testo nelle pagine di amministrazione.

Scenario tipico: vuoi che la parola "computer" diventi sempre un link al tuo negozio in affiliazione. Crea una regola: Trova = computer, Sostituisci = <a href="https://shop.example.com">computer</a>. Il plugin la applica a tutti gli articoli, pagine e commenti al volo.

Se non vuoi installare un plugin separato per una dozzina di link, uno snippet di codice nel file functions.php del tuo tema risolve il problema. Scorre il contenuto di ogni articolo, trova le parole specificate e le racchiude in link.

Quando lavori con il file functions.php del tuo tema, usa un tema child in modo che le modifiche non vengano cancellate durante gli aggiornamenti. E fai un backup del file prima di modificarlo.

Codice PHP per l'inserimento automatico di link in WordPress

Aggiungi questo codice a functions.php:

1function techblog_auto_link_words( $text ) {
2 $replace = array(
3 'wordpress' => '<a href="https://wordpress.org">WordPress</a>',
4 'php' => '<a href="https://www.php.net">PHP</a>',
5 );
6 $text = str_replace( array_keys( $replace ), $replace, $text );
7 return $text;
8}
9add_filter( 'the_content', 'techblog_auto_link_words' );
10add_filter( 'the_excerpt', 'techblog_auto_link_words' );

Come funziona: la funzione str_replace cerca le chiavi dell'array $replace nel testo dell'articolo e le sostituisce con i valori (link). I filtri the_content e the_excerpt applicano la sostituzione rispettivamente al testo completo dell'articolo e all'estratto.

Puoi espandere l'array $replace: aggiungi una nuova coppia 'keyword' => '<a href="...">anchor</a>' e la regola inizia a funzionare immediatamente.

Limitazioni: la sostituzione distingue tra maiuscole e minuscole, si attiva su corrispondenze esatte e non sa come escludere parole all'interno di tag o attributi. Se il testo aveva già un link con la stessa ancora, ti ritroverai con un link annidato. Per scenari complessi, usa Real-Time Find and Replace descritto sopra.

⁉️🤔 Domande frequenti

Posso cercare e sostituire testo in WordPress senza plugin?

Sì, con una query SQL diretta al database. Il comando assomiglia a: UPDATE wp_posts SET post_content = REPLACE(post_content, 'old', 'new'). Ma questo metodo non gestisce i dati serializzati, richiede accesso a phpMyAdmin o WP-CLI e non fornisce alcuna anteprima. Un errore nella query può corrompere il database. Better Search Replace fa la stessa cosa ma in modo più sicuro.

Cosa devo fare se il sito si rompe dopo una sostituzione?

Prima di tutto, niente panico. Se hai abilitato la Dry Run prima della sostituzione, sai esattamente quali tabelle sono state interessate. In caso contrario, ripristina il database da un backup (hai fatto un backup prima dell'operazione, vero?). Better Search Replace non crea backup propri nella versione gratuita, quindi un backup è fondamentale.

Real-Time Find and Replace rallenta il sito?

Con un numero ragionevole di regole (fino a 50), no. Il plugin esegue la sostituzione prima dell'output della pagina, lato server, senza query aggiuntive al database. Se usi la cache, l'impatto è ancora minore. Possono sorgere problemi solo con regole regex complesse che contengono errori di sintassi.

Qual è la differenza tra Real-Time Find and Replace e Better Search Replace?

Better Search Replace modifica i dati nel database: le modifiche sono permanenti. Real-Time Find and Replace scambia il testo al momento del rendering: il database rimane intatto. Il primo serve per correzioni una tantum (refusi, cambi di dominio). Il secondo per regole permanenti (censura, inserzioni pubblicitarie, link automatici). Non sono concorrenti ma strumenti per compiti diversi.

Quale metodo dovrei scegliere per la sostituzione del dominio durante la migrazione di un sito?

Solo Better Search Replace. La sostituzione del dominio significa modificare migliaia di URL nel database (nei contenuti, nei meta field, nelle impostazioni). Real-Time Find and Replace non funzionerebbe: non modifica fisicamente i dati e un cambio di dominio richiede la scrittura effettiva nel database. Inoltre Better Search Replace gestisce correttamente gli array serializzati dove la lunghezza della stringa è codificata insieme al valore.

Cosa usare per il tuo compito

Il compito determina lo strumento. Non esiste un "trova e sostituisci" universale in WordPress, ma c'è una soluzione pronta per ogni scenario:

  • Devi correggere alcune frasi in una bozza: Advanced Editor Tools, il pulsante Trova e Sostituisci nell'editor
  • Un refuso sparso su un centinaio di articoli: Better Search Replace, una query al database con anteprima
  • Vuoi che il logo di un cliente venga automaticamente racchiuso in un link al sito del cliente in tutti i contenuti: Real-Time Find and Replace, una regola al volo
  • Devi aggiungere link a una dozzina di parole chiave senza installare plugin: Snippet PHP in functions.php, 10 righe di codice

Prima di qualsiasi sostituzione: backup. Prima di sostituire nel database: Dry Run. Queste due abitudini ti risparmiano giorni di ripristino.