La maggior parte dei consigli per una ricerca lenta di WordPress la tratta come un sito web lento, motivo per cui raramente aiuta. Il ritardo risiede solitamente nella query del database che viene eseguita ogni volta che un visitatore preme cerca.
Per impostazione predefinita, WordPress trasforma ogni parola di ricerca in un pattern come %parola% e lo confronta con il titolo, l'estratto e il contenuto dei tuoi post e pagine. Comprimere le immagini o aggiungere una CDN accelera il caricamento delle pagine, ma nessuna delle due cose accorcia quella ricerca.
Il modo per accelerare la ricerca di WordPress è impedire che quella scansione avvenga ad ogni query. Un indice di ricerca fa il lavoro in anticipo, in modo che WordPress possa cercare parole corrispondenti invece di leggere ogni post.
In questo articolo, ti mostreremo 7 correzioni che mirano alla query di ricerca stessa, in ordine di impatto, più come capire quali il tuo sito necessita.
Perché la ricerca di WordPress è così lenta?
La ricerca integrata di WordPress esegue una nuova query del database ogni volta che qualcuno cerca.
Quella query prende ogni parola digitata dal visitatore e la confronta con il titolo, l'estratto e il contenuto dei post nei tuoi tipi di post ricercabili.
Il carattere jolly % all'inizio di ogni pattern è ciò che la rende lenta. Secondo la documentazione MySQL sugli indici, un indice normale non può essere utilizzato per una corrispondenza che inizia con un carattere jolly, quindi il database deve leggere il testo invece.
Pensa a un bibliotecario che legge ogni libro sullo scaffale ogni volta che qualcuno chiede un argomento, invece di controllare il catalogo cartaceo. Su un piccolo blog, nessuno nota l'attesa.
Man mano che il tuo sito cresce fino a centinaia o migliaia di post, pagine e prodotti, ogni ricerca ha più testo da leggere.
Le ricerche più lunghe costano anche di più, perché WordPress aggiunge un altro set di corrispondenze per ogni parola aggiuntiva e richiede che tutte corrispondano.
Ora, diamo un'occhiata alle sette correzioni seguenti per velocizzare la query di ricerca stessa.
7 Modi per Accelerare la Ricerca di WordPress
Queste correzioni sono ordinate per impatto, iniziando con quella che ti dice dove concentrarti. Ecco una rapida panoramica di tutti e 7 i modi.
- Individua prima cosa rallenta la tua ricerca
- Sostituisci la scansione del database con un indice di ricerca
- Cerca solo il contenuto di cui i visitatori hanno bisogno
- Aggiungi una cache persistente degli oggetti
- Impedisci all'indicizzazione di competere con i visitatori
- Rendi la ricerca istantanea con la ricerca live
- Aggiorna PHP e il tuo database, poi considera l'hosting
1. Trova prima cosa sta rallentando la tua ricerca
Prima di cambiare qualcosa, è utile vedere dove va il tempo.
Esistono plugin gratuiti per WordPress che elencano le query del database su ogni pagina e segnalano quelle lente. Mostra anche quale plugin, tema o parte del core di WordPress è responsabile per ogni query.
Dopo averlo installato, esegui una ricerca sul tuo sito e apri il menu Query Monitor nella barra degli strumenti di amministrazione.
Se la query di ricerca è la più lenta della pagina, le correzioni da 2 a 5 aiuteranno di più. Se il server stesso è il collo di bottiglia, salta alla correzione 7.
Se la query di un altro plugin è la più lenta, controlla le impostazioni di quel plugin o chiedi prima al suo sviluppatore.
E se la ricerca non restituisce nulla, invece di risultati lenti, la nostra guida su come correggere la ricerca di WordPress non funzionante copre quel problema.
2. Sostituisci la scansione del database con un indice di ricerca
Il guadagno di velocità maggiore deriva dal non dover scansionare i post al momento della ricerca.
Un plugin di ricerca con un proprio indice legge il tuo contenuto una volta, in anticipo, e memorizza ogni parola in una tabella di ricerca.
Quando qualcuno cerca, il plugin cerca quelle parole invece di leggere ogni post. Raccomandiamo SearchWP per questo.

SearchWP è il miglior plugin di ricerca per WordPress, fidato da oltre 50.000 proprietari di siti web. Costruisce un indice di ricerca all'interno del tuo database WordPress e si occupa della ricerca predefinita del tuo sito, senza bisogno di modifiche al tema.
Ecco alcune caratteristiche chiave offerte da SearchWP che aiutano con la velocità di ricerca:
- Il proprio indice di ricerca. SearchWP memorizza il contenuto dalle origini che scegli in tabelle di indice dedicate, quindi una ricerca cerca parole invece di scansionare i post.
- Indicizzazione in background. I contenuti nuovi e aggiornati vengono indicizzati automaticamente dopo averli salvati, in brevi passaggi in background.
- Controllo su cosa viene indicizzato. Decidi quali tipi di contenuto e campi ogni motore di ricerca include, il che mantiene l'indice snello.
- Ricerca Ajax Live. I risultati appaiono in un menu a discesa mentre i visitatori digitano, in modo che vedano le corrispondenze prima di premere Invio.
Per iniziare, registrati sul sito web di SearchWP e vai alla scheda Download nel tuo account. Da lì, scarica il file ZIP del plugin e copia la tua chiave di licenza.

Successivamente, vorrai installare e attivare il plugin sul tuo sito WordPress.
Dopo l'attivazione, fai clic su Avvia procedura guidata di onboarding e segui le istruzioni sullo schermo. Una volta completata la configurazione, SearchWP crea il suo indice in background.

Da allora in poi, le ricerche tramite il modulo di ricerca standard del tuo sito passano attraverso l'indice di SearchWP invece della scansione predefinita.
3. Cerca solo il contenuto di cui i visitatori hanno bisogno
Un indice più piccolo ha meno voci da controllare ad ogni ricerca.
SearchWP indicizza solo le origini che abiliti su ciascun motore, quindi vale la pena tagliare tutto ciò che i visitatori non cercano mai.
Per farlo, vai su SearchWP » Algoritmo e fai clic su Origini e Impostazioni.

Da lì, deseleziona tutte le origini di cui i tuoi visitatori non hanno bisogno, come Commenti se è abilitato, e fai clic su Fatto.

Successivamente, fai clic su Aggiungi/Rimuovi attributi su un'origine per scegliere quali campi vengono indicizzati. Al termine, fai clic su Fatto per salvare le modifiche.
Dopo di che, fai clic su Salva, quindi fai clic su Ricostruisci indice e conferma il prompt in modo che SearchWP ricostruisca l'indice con le tue nuove impostazioni.

Per una guida completa, consulta la nostra guida su come limitare la ricerca a tipi di post specifici.
4. Aggiungi una cache persistente degli oggetti
Una cache degli oggetti memorizza i risultati delle query del database in memoria, in modo che WordPress possa riutilizzarli invece di interrogare nuovamente il database.
WordPress memorizza già nella cache i risultati delle proprie query sui post, comprese le ricerche. Senza una cache degli oggetti persistente, tuttavia, tale cache viene eliminata non appena la pagina finisce di caricarsi.
Una cache persistente come Redis o Memcached mantiene quei risultati tra le visite, in modo che una ricerca predefinita ripetuta di WordPress possa saltare il database. Molti host ne offrono uno, quindi vale la pena chiedere al tuo.
WordPress reimposta i risultati delle query memorizzati nella cache ogni volta che un post viene aggiunto o aggiornato, quindi i maggiori guadagni si vedono sui siti in cui il contenuto non cambia spesso.
Se SearchWP esegue la tua ricerca, la ricerca del suo indice viene comunque eseguita ogni volta. La cache degli oggetti può comunque velocizzare le altre query sulla pagina.
5. Impedisci all'indicizzazione di competere con i visitatori
Un indice di ricerca deve essere creato e mantenuto aggiornato, e quel lavoro viene eseguito sullo stesso server che utilizzano i tuoi visitatori.
SearchWP indicizza in background, in passaggi che si interrompono dopo 60 secondi e poi riprendono da dove avevano lasciato. Su hosting condiviso, puoi rendere più leggeri ciascuno di questi passaggi.
Per farlo, vai su SearchWP » Impostazioni e fai clic sulla scheda Varie. Quindi, attiva Riduci Carico Indicizzatore, che elabora meno dati per passaggio di indicizzazione.

L'indicizzazione richiede più tempo con questa opzione attiva, ma mette meno sotto sforzo il tuo server mentre i visitatori navigano.
Mentre sei su quella scheda, lascia disattivata Riparsare Contenuto Documento. Mantenere il testo PDF e dei documenti già estratto in posizione velocizza le ricostruzioni dell'indice.
Vorrai anche lasciare disattivata Rimuovi Lunghezza Minima Parola. Quando è attiva, SearchWP indicizza anche parole più corte di 3 caratteri, il che rende l'indice più grande.
Nella scheda Generale, Corrispondenze Parziali cerca parole parziali solo quando una parola di ricerca non ha una corrispondenza esatta nell'indice. Quindi lasciarla attiva aggiunge poco lavoro alle ricerche in cui ogni parola corrisponde già.

Puoi leggere ogni opzione su queste schede nella documentazione delle impostazioni di SearchWP.
Se il tuo sito ha una vasta libreria PDF, l'analisi dei documenti può essere la parte più pesante dell'indicizzazione. L'estensione SearchWP Xpdf Integration sostituisce lo strumento pdftotext di Xpdf, che è più veloce e accurato del parser PDF integrato di SearchWP per i file difficili da analizzare, purché il tuo host possa eseguirlo.
La nostra documentazione di Xpdf Integration spiega la configurazione. Per gli host in cui l'analisi PDF locale incontra difficoltà, l'estensione Offsite PDF Parsing (Pro e versioni successive) invia l'estrazione del testo a un server remoto invece.
6. Rendi la ricerca istantanea con la ricerca dal vivo
La ricerca live non renderà la query del database più breve, ma cambierà la velocità percepita della ricerca.
L'estensione SearchWP Live Ajax Search mostra i risultati in un menu a discesa mentre i visitatori digitano, in modo che vedano le corrispondenze prima ancora di premere Invio.

Per impostazione predefinita, attende anche che un visitatore metta in pausa la digitazione per 300 millisecondi e abbia inserito almeno 3 caratteri. Ciò impedisce al tuo server di eseguire una nuova ricerca ad ogni pressione di tasto.
SearchWP Live Ajax Search è incluso in ogni piano SearchWP. La nostra guida su come aggiungere la ricerca live con completamento automatico copre la configurazione ed elenca ogni opzione.
7. Aggiorna PHP e il tuo database, poi considera l'hosting
Versioni PHP e database obsolete possono rallentare l'intero sito, inclusa la ricerca.
WordPress raccomanda PHP 8.3 o superiore e MySQL 8.0 o MariaDB 10.11 o superiore. Il tuo host può dirti quali versioni utilizza il tuo sito e molti ti permettono di cambiare le versioni PHP dalla dashboard di hosting.
L'aggiornamento del tuo piano di hosting arriva per ultimo. Se Query Monitor mostra ancora query lente dopo le correzioni sopra, il tuo server potrebbe non avere risorse sufficienti per il tuo traffico.
Domande Frequenti
1. Perché la ricerca di WordPress è così lenta?
La ricerca di WordPress è solitamente lenta perché legge il tuo contenuto ad ogni ricerca. La ricerca predefinita confronta ogni parola cercata con il titolo, l'estratto e il contenuto dei tuoi post, quindi fa più lavoro man mano che il tuo sito cresce.
Un indice di ricerca risolve questo problema eseguendo quel lavoro in anticipo.
2. Un plugin di caching velocizza la ricerca di WordPress?
Un plugin di caching aiuta meno di quanto ci si aspetti, perché ogni ricerca crea un URL diverso. WP Rocket, ad esempio, non memorizza nella cache i risultati di ricerca per impostazione predefinita.
Una cache persistente degli oggetti come Redis può aiutare le ricerche predefinite ripetute di WordPress, sebbene WordPress reimposti quei risultati memorizzati nella cache ogni volta che un post viene modificato.
3. Ho bisogno di Elasticsearch o Algolia per una ricerca veloce di WordPress?
La maggior parte dei siti WordPress non necessita di un servizio di ricerca esterno. Un plugin di ricerca con il proprio indice, come SearchWP, velocizza la ricerca all'interno del proprio database senza chiavi API o prezzi basati sull'utilizzo.
I servizi ospitati hanno più senso per cataloghi molto grandi con uno sviluppatore che li mantenga.
4. Un plugin di ricerca rallenterà il mio sito WordPress?
SearchWP costruisce il suo indice in background, in brevi passaggi, in modo che i visitatori possano continuare a navigare mentre funziona. Su hosting condiviso, puoi andare su SearchWP » Impostazioni, fare clic sulla scheda Varie e attivare Riduci carico indicizzatore per rendere ogni passaggio più leggero.
5. La pulizia del mio database rende più veloce la ricerca di WordPress?
La pulizia del database aiuta la velocità generale del sito, ma fa poco per la ricerca. La query di ricerca di WordPress legge la tabella dei post, non i transienti o i commenti che gli strumenti di pulizia solitamente rimuovono.
Sostituire la scansione di ricerca con un indice fa una differenza molto maggiore.
Dai ai tuoi visitatori risultati di ricerca più veloci
Una ricerca lenta di WordPress di solito si riduce alla query, quindi le correzioni che aiutano di più sono quelle che cambiano il modo in cui la ricerca trova i suoi risultati.
Speriamo che questo articolo ti abbia aiutato a capire come velocizzare la ricerca di WordPress. Potresti anche voler consultare le nostre guide su modi per migliorare la ricerca di WordPress e risolvere i problemi di indicizzazione della ricerca di WordPress.
Pronto a smettere di far aspettare i visitatori per i risultati? Puoi iniziare con SearchWP qui. Ogni piano include una garanzia di rimborso di 14 giorni.



