Per gli utenti di WordPress che desiderano migliorare le prestazioni del loro negozio online, WooCommerce rappresenta un plugin e-commerce open source potente e flessibile. Offre una soluzione completa che va dalla gestione dei prodotti, al carrello della spesa, fino ai gateway di pagamento. Tuttavia, con l’aumentare delle dimensioni del negozio e del traffico, possono emergere problemi di prestazioni che influenzano negativamente l’esperienza utente e i tassi di conversione. Questo articolo esaminerà in dettaglio una serie di strategie per ottimizzare le prestazioni di un negozio basato su WooCommerce, coprendo tutti gli aspetti, dalla configurazione del server fino agli aggiustamenti a livello di codice.
Ottimizzazione dei server e dell’ambiente di base
La base della ottimizzazione delle prestazioni è un ambiente server stabile e correttamente configurato. Una configurazione errata del server può rallentare direttamente la velocità di risposta di tutto il sito web.
Scegliere una soluzione di hosting ad alte prestazioni.
Per i negozi gestiti con WooCommerce, i server condivisi di solito non riescono a soddisfare le esigenze di prestazioni, soprattutto durante i periodi di promozioni. Si consiglia di utilizzare servizi di hosting ottimizzati appositamente per WooCommerce o WordPress: questi fornitori installano solitamente sistemi di cache per i dati, stack di server efficienti (ad esempio Nginx + PHP-FPM) e offrono integrazioni con servizi CDN (Content Delivery Network). Per i negozi di medie e grandi dimensioni, è consigliabile optare per VPS (Virtual Private Server) o server cloud, in modo da poter aggiustare dinamicamente le risorse in base al volume di traffico.
Si consiglia di leggere Come creare un sito di e-commerce WordPress indipendente ad alta conversione con WooCommerce。
Configurare un server web efficiente e PHP
Assicurati che il tuo server esegua l’ultima versione stabile di PHP (ad esempio PHP 8.x): rispetto alle versioni più vecchie, le nuove versioni di PHP offrono notevoli miglioramenti in termini di prestazioni. Inoltre, abilitare l’estensione OPcache può aumentare notevolmente la velocità di esecuzione delle tue script PHP. A livello di server web, Nginx di solito si comporta meglio di Apache nel gestire file statici e richieste concorrenti. La configurazione corretta degli header di cache (Cache-Control headers) è fondamentale per i contenuti statici.
Implementare un meccanismo di cache per gli oggetti
Le query al database di WordPress e WooCommerce avvengono molto frequentemente. L’utilizzo di un cache basato su oggetti permette di memorizzare i risultati delle query nella memoria, evitando così richieste ripetute. La soluzione più efficace è installare un plugin per il cache persistente, ad esempio…Redis或MemcachedPer implementarlo, molti provider di hosting avanzati offrono questa funzionalità già integrata. Una volta abilitata, è necessario assicurarsi che…wp-config.phpIl file è configurato correttamente.
Impostazioni di base di WooCommerce e gestione degli plugin
La configurazione di WooCommerce stesso e dei suoi plugin ha un impatto diretto sulle prestazioni del sito web. Configurazioni eccessivamente complesse e plugin inefficienti sono spesso le cause principali del rallentamento del sito.
Ottimizzare alcune impostazioni specifiche di WooCommerce
Nella sezione di configurazione di WooCommerce, ci sono alcune opzioni chiave da tenere in considerazione. Nella scheda “Prodotti”, è consigliabile ridurre il numero di prodotti visualizzati per pagina e il numero di prodotti consigliati per il cross-selling/affiliazione, a meno che non sia strettamente necessario: un elenco troppo lungo di prodotti aumenta notevolmente il carico sul database. Nella sezione “Account e privacy”, si può considerare la disattivazione della funzione che consente di conservare i dati storici dei clienti. Inoltre, è opportuno utilizzare regolarmente la funzione “Pulisci sessioni” presente nell’strumento “Stato” per eliminare i dati relativi ai carrelli della spesa scaduti.
Gestire e scegliere con attenzione i plugin
Ogni plugin aumenta il numero di richieste HTTP, le query al database e i tempi di esecuzione del codice PHP. Effettua regolarmente un controllo della tua lista di plugin e disattiva/disponi di quelli che non vengono più utilizzati. Quando scegli nuovi plugin, dà priorità a quelli che sono leggeri, di alta qualità, aggiornati frequentemente e con una buona reputazione in termini di prestazioni. Evita di utilizzare plugin che hanno funzionalità sovrapposte.
Si consiglia di leggere Da principiante a esperto con WordPress: una guida completa per la creazione e l'ottimizzazione delle prestazioni dei siti web.。
Implementare un trattamento delle sessioni efficiente
Per impostazione predefinita, WooCommerce memorizza i dati della sessione in…wp_optionsNel tabello, questo potrebbe causare problemi di prestazioni del database in caso di elevato traffico. Un’importante misura di ottimizzazione consiste nel modificare il modo in cui vengono memorizzate le sessioni, utilizzando il file system del server o soluzioni più efficienti.Redis/MemcachedQuesto può essere realizzato inserendo…wp-config.phpAggiungi il seguente codice per implementare:
define('WP_SESSION_USE_OPTIONS', false); Successivamente, è necessario installare un plugin come “WP Redis Session Handler” per completare la configurazione.
Ottimizzazione delle prestazioni del front end e dell’esperienza utente
La velocità percepita dall’utente dipende in gran parte dall’efficienza del caricamento e della rendering dei risorse front-end. Ottimizzare il codice front-end può migliorare direttamente l’esperienza di navigazione e di acquisto dell’utente.
Ottimizzare le immagini e le risorse multimediali
Le immagini dei prodotti rappresentano i file più voluminosi all’interno di un negozio online gestito con WooCommerce. È essenziale comprimere tutte le immagini caricate, e per farlo in modo automatico si possono utilizzare plugin come ShortPixel o Imagify. Inoltre, è consigliabile implementare un sistema di immagini responsive, in modo che le immagini si adattino correttamente a diversi dispositivi e dimensioni di schermo.srcsetQueste funzionalità garantiscono che gli utenti scarichino soltanto i file immagine adatti alle dimensioni del loro schermo. La tecnologia di caricamento “lazy loading” permette di ritardare il caricamento delle immagini che non sono visibili sulla pagina iniziale, il che è particolarmente utile per le pagine dei cataloghi dei prodotti. A partire da WooCommerce 5.5, questa funzionalità è già integrata nel software.
Unire, minimizzare e caricare i risorse in modo differito (con ritardo)
Utilizza plugin come Autoptimize o WP Rocket per unire e ridurre al minimo i file CSS e JavaScript, al fine di diminuire il numero di richieste HTTP. Per i file JavaScript non essenziali (ad esempio, i pulsanti per condividere sui social media o alcune script di analisi), imposta il loro caricamento in modo ritardato o asincrono, per evitare che blocchino la visualizzazione della pagina. Presta particolare attenzione all’ottimizzazione delle pagine del carrello e di pagamento: i loro contenuti dovrebbero essere caricati in modo il più rapido e efficiente possibile.
Implementare una strategia di cache affidabile
Il caching delle pagine è uno dei metodi più efficaci per migliorare la velocità di caricamento dei siti web. Per WooCommerce, è necessario attuare regole di caching a livello dettagliato: impostare un caching a lungo termine per le pagine statiche (come la pagina “Informazioni su di noi” o il blog); impostare un caching a durata media (ad esempio, 1 ora) per le pagine che elencano i prodotti o le categorie; mentre per le pagine del carrello, del mio account e di pagamento (che di solito contengono informazioni sensibili o dati in tempo reale), è consigliabile utilizzare un caching a breve durata.?wc-ajaxLe pagine che contengono parametri o cookie specifici devono essere completamente escluse dal cache per garantire il corretto funzionamento delle funzionalità dinamiche. La maggior parte dei plugin di cache offre la possibilità di impostare regole per escludere tali pagine.
Si consiglia di leggere Guida allo sviluppo di WooCommerce: creare un sito e-commerce professionale da zero.。
Manutenzione dei database e ottimizzazione avanzata del codice
Il database rappresenta il “centro di memoria” di un negozio; il suo stato di salute influisce direttamente sulle prestazioni dell’intero sistema. Le ottimizzazioni a livello di codice, invece, permettono di migliorare l’efficienza delle operazioni eseguite fin dalle loro radici.
Pulire e ottimizzare regolarmente il database.
Durante il funzionamento di WooCommerce vengono generati molti dati temporanei, come versioni modificate dei contenuti, bozze automatiche, opzioni transitorie scadute e dati di ordini non più utilizzati. La pulizia regolare di questi dati può ridurre notevolmente le dimensioni del database e migliorare la velocità delle query. È possibile utilizzare plugin come “WP-Optimize” o “Advanced Database Cleaner” per eseguire tali operazioni in modo sicuro. Prima di procedere, assicurarsi di eseguire un backup completo dei dati.
Ottimizzare le funzionalità di ricerca e i cicli di elaborazione dei prodotti
Le query di prodotti inefficienti presenti nei temi personalizzati o nei plugin rappresentano un vero problema per le prestazioni del sistema. È consigliabile evitare di utilizzarle sulla pagina principale o nella barra laterale.WP_Query或get_postsSto effettuando una ricerca su un gran numero di prodotti senza utilizzare la funzionalità di paginazione. Devo assicurarmi che vengano utilizzati i parametri corretti durante la ricerca, ad esempio impostando le opzioni appropriate.'no_found_rows' => true(Quando non è necessario effettuare la paginazione, è possibile evitare il costo elevato associato al calcolo effettuato da SQL_CALC_FOUND_ROWS.) Per le operazioni di filtraggio dei prodotti più complesse, si consiglia di utilizzare lo strumento integrato in WooCommerce chiamato “Filtra i prodotti per attributo”, oppure plugin progettati appositamente per garantire prestazioni ottimali durante i processi di filtraggio.
Ottimizzare i processi chiave utilizzando hook e azioni
Grazie agli hook forniti da WooCommerce, è possibile rimuovere funzionalità non necessarie o ottimizzare determinati processi. Ad esempio, se il negozio non ha bisogno della funzionalità dei commenti, è possibile disattivarla facilmente.functions.phpÈ necessario aggiungere del codice per disabilitare le recensioni dei prodotti. Un’altra ottimizzazione comune consiste nel modificare o disabilitare alcune chiamate AJAX non essenziali. Tuttavia, per apportare tali modifiche è necessario disporre di alcune conoscenze di sviluppo; si consiglia quindi di utilizzare dei sottotemi (subtopics) per gestire queste operazioni in modo strutturato.functions.phpEseguire operazioni sui file.
// 示例:禁用单个产品页面的关联产品查询(如果不需要)
add_action( 'wp', function() {
if ( is_product() ) {
remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20 );
}
} ); Riassumendo
Ottimizzare le prestazioni di un negozio WooCommerce rappresenta un progetto sistematico che coinvolge server, configurazioni, plugin, interfaccia utente (front-end) e database; non esiste quindi una soluzione “miracolosa” che possa risolvere tutti i problemi in un colpo solo. Le migliori pratiche partono dall’infrastruttura, assicurandosi di disporre di un ambiente di hosting affidabile e performante; successivamente si procede con la configurazione dettagliata di WooCommerce e la gestione dei plugin utilizzati. È importante anche ottimizzare il caricamento e la visualizzazione dei contenuti dell’interfaccia utente. Infine, le prestazioni vengono consolidate attraverso manutenzioni regolari del database e ottimizzazioni mirate del codice sorgente. È fondamentale monitorare costantemente la velocità del sito web (utilizzando strumenti come GTmetrix o PageSpeed Insights) e analizzare i punti di blocco che ne influenzano le prestazioni, al fine di garantire che il proprio negozio online offra sempre un’esperienza di acquisto rapida e fluida agli utenti. Questo contribuisce a migliorare le posizioni nei motori di ricerca, la soddisfazione degli utenti e, di conseguenza, le vendite.
FAQ - Domande frequenti
Cosa posso fare se, dopo aver abilitato la cache della pagina, il contenuto del carrello della spesa non viene aggiornato?
Si tratta di un tipico problema di configurazione della cache. Le pagine del carrello della spesa, della procedura di pagamento e degli account utente sono molto dinamiche e devono quindi essere escluse dalla cache delle pagine.
La maggior parte degli strumenti di caching (come WP Rocket e W3 Total Cache) offre opzioni per “non cacheare mai una pagina” o per escludere determinate pagine dal processo di caching. È necessario configurare tali opzioni per le pagine che contengono informazioni relative al carrello degli acquisti, alla procedura di pagamento, al profilo utente, ecc./cart/, /checkout/, /my-account/) nonché gli endpoint AJAX di WooCommerce (che di solito contengono…)wc-ajaxI parametri vengono aggiunti all’elenco degli elementi da escludere. Inoltre, alcuni plugin evitano automaticamente l’utilizzo della cache rilevando i cookie della sessione dell’utente; assicuratevi che questa funzionalità sia abilitata.
Come posso capire se il mio negozio WooCommerce ha bisogno di un cache per gli oggetti?
Se il tuo negozio dispone di un gran numero di prodotti (ad esempio, più di 500) e il numero di visitatori giornalieri è elevato, oppure se nei tool di test delle prestazioni sono stati riscontrati valori anomali per i tempi di esecuzione delle query al database o per i tempi di risposta del server (TTFB – Time To First Byte), l’utilizzo della cache degli oggetti potrebbe apportare notevoli miglioramenti alle prestazioni del sito.
Puoi verificare se il caching degli oggetti persistenti è attivo nella sezione “Strumenti” -> “Salute del sito” -> “Informazioni” -> “Database” presente nell’interfaccia di amministrazione di WordPress. Un metodo più diretto è installare il plugin “Query Monitor”, che elenca in dettaglio il numero e il tempo di esecuzione delle query al database per ogni pagina. Se il numero di query è elevato (ad esempio, superiore a 100), attivare il caching degli oggetti persistenti potrebbe migliorare le prestazioni del sito.Redis或MemcachedLa cache degli oggetti ridurrà efficacemente le query ripetute, diminuendo così il carico sul database.
Quando si ottimizzano le immagini, è meglio scegliere la compressione con perdita o quella senza perdita?
Dipende dalla tua valutazione tra la qualità dell’immagine e le dimensioni del file. Per le immagini dei prodotti in WooCommerce, si consiglia l’utilizzo di un metodo di compressione “dannosa” (ossia che riduce la qualità dell’immagine) intelligente.
La compressione senza perdita di qualità permette di ridurre le dimensioni dei file senza comprometterne l’integrità, tuttavia i livelli di compressione disponibili sono limitati. La compressione con perdita di qualità intelligente (ad esempio con livelli compresi tra 70% e 85%) consente di ridurre notevolmente le dimensioni delle immagini (di oltre il 701%) senza che la qualità venga quasi percepita dall’occhio umano; questo è fondamentale per migliorare la velocità di caricamento dei siti web. La maggior parte degli strumenti di ottimizzazione delle immagini offre opzioni di “compressione intelligente” o “compressione con perdita di qualità” e permette di visualizzare i risultati prima e dopo l’applicazione della compressione. Per elementi grafici come loghi o icone, che richiedono una chiarezza assoluta, è consigliabile utilizzare la compressione senza perdita di qualità.
Quando si pulisce il database di WooCommerce, quali dati rimangono “sicuri” (ossia non vengono eliminati o modificati in modo errato)?
I dati che possono essere eliminati in modo sicuro sono principalmente informazioni temporanee, obsolette o ridondanti; tuttavia, prima di procedere, è essenziale eseguire un backup.
I dati che di solito possono essere eliminati in modo sicuro includono: tutte le versioni riviste degli articoli, i bozze automatiche, gli elementi che sono stati archiviati nella cartella “Cestino” da più di 30 giorni, le opzioni temporanee (transient) scadute (WooCommerce genera una grande quantità di tali dati), nonché le etichette e le categorie non utilizzate. Per quanto riguarda gli ordini di WooCommerce, non eliminare mai gli ordini completati o in fase di elaborazione, a meno che non si sia certi che non siano più necessari per motivi legali o aziendali. I plugin dedicati alla pulizia del database indicano chiaramente quali dati possono essere eliminati e consentono di visualizzare in anteprima gli elementi che verranno rimossi. Effettua sempre le operazioni prima in un ambiente di test e applicale sul sito web di produzione solo dopo aver verificato che tutto funzioni correttamente.
Il prossimo passo, cosa dovremo fare dopo?
Per una lettura approfondita e conoscenza pratica
I seguenti contenuti sono correlati all'argomento di questo articolo e sono adatti per una lettura approfondita. È consigliabile iniziare con l'articolo più vicino al tuo problema attuale, per poi passare gradualmente agli argomenti correlati, il che di solito dà risultati migliori.
- Guida completa per WooCommerce: Da l’installazione alla configurazione avanzata per un negozio e-commerce operativo
- Guida completa all’acquisto di un host condiviso: dall’approccio iniziale all’esperto, per evitare trappole legate a prestazioni e sicurezza
- Cos’è WordPress? Una introduzione completa al sistema di gestione dei contenuti (Content Management System, CMS).
- Prefazione: Perché scegliere WordPress per lo sviluppo?
- Guida completa a WooCommerce: creare da zero un negozio online WordPress professionale