Guida pratica
WordPress non carica CSS e JavaScript
WordPress non carica CSS e JavaScript: metodo diagnostico, controlli in ordine e procedura sicura per intervenire senza modifiche casuali.

Risposta immediata: Quando contenuti o asset non compaiono, bisogna distinguere dato assente, markup non generato, URL errato, risposta 404/403 e regola CSS che nasconde l’elemento. La console e il pannello Network sono più utili di una nuova installazione casuale.
Il sintomo descritto da “WordPress non carica CSS e JavaScript” non identifica automaticamente una sola causa. La diagnosi efficace restringe il campo attraverso test reversibili e confronta ciò che accade prima e dopo ogni modifica.
Questa guida riguarda il funzionamento del nucleo WordPress e dei componenti che partecipano alla richiesta. L’obiettivo è distinguere un errore del core da un problema di plugin, tema, server o configurazione.
Cosa sta accadendo davvero
INP e reattività dipendono dal lavoro eseguito sul thread principale. Un DOM molto grande, handler duplicati, script terzi e operazioni sincrone possono rendere l’interfaccia lenta anche con un buon tempo di caricamento.
Su WordPress possono coesistere cache del browser, page cache, cache degli oggetti, opcode cache PHP e CDN. Svuotarne una sola non garantisce che il visitatore riceva la versione aggiornata; inoltre checkout, area account e pagine personalizzate non devono essere trattate come normali pagine pubbliche cacheabili.
Un problema mobile può essere causato da larghezze fisse, margini negativi, immagini senza vincoli, elementi assoluti, z-index o breakpoint incoerenti. Nascondere l’overflow può occultare il sintomo senza correggere l’elemento che supera il viewport.
La velocità percepita deriva da più componenti: DNS, connessione, TTFB, HTML, immagini, CSS, JavaScript e interazioni. Ottimizzare senza una baseline può spostare il problema o peggiorare funzionalità dinamiche.
Il test migliore cambia una sola variabile, produce un’evidenza leggibile e può essere annullato. Se non è possibile indicare cosa dimostrerebbe il successo o il fallimento del test, l’intervento è ancora troppo generico.
Prima di intervenire: crea una baseline
Prima di modificare file, database o configurazioni, crea una fotografia minima della situazione. Questo permette di distinguere la causa dalla conseguenza e impedisce che una correzione apparente cancelli informazioni utili.
- URL e percorso esatto in cui si manifesta “WordPress non carica CSS e JavaScript”
- data e ora del primo episodio e dell’ultima modifica nota
- versioni di WordPress, PHP, tema e componenti coinvolti
- stato di cache, CDN, WAF e servizi esterni pertinenti
- backup disponibile e ultima prova di ripristino
- differenza tra editor e frontend
- TTFB e tempi server
- risorsa LCP
- long task e INP
- query o endpoint lento
Quando il sito gestisce ordini, moduli o dati aggiornati di frequente, annota anche l’ultimo record valido e stabilisci una finestra in cui evitare nuove modifiche. In questo modo il rollback non introduce una perdita di dati silenziosa.
Percorso diagnostico dettagliato
Procedi dal controllo meno invasivo a quello più profondo. La tabella non è una lista da eseguire meccanicamente: ogni riga deve confermare o escludere un livello del sistema.
| Passo | Controllo | Evidenza | Interpretazione |
|---|---|---|---|
| 1 | provare 320, 375, 768 e larghezze intermedie | TTFB e tempi server | Se il risultato cambia, il livello appena isolato partecipa direttamente al problema. |
| 2 | controllare min-width, width, transform, margin e position | risorsa LCP | Se non cambia, conserva l’esito e passa al livello successivo senza aggiungere altre modifiche. |
| 3 | verificare menu, modali e controlli floating con tastiera | long task e INP | Un errore nello stesso timestamp è più significativo di avvisi generici precedenti. |
| 4 | confrontare editor e frontend con cache disabilitata | query o endpoint lento | Confronta sempre il risultato con un caso funzionante dello stesso sito. |
| 5 | misurare pagine e utenti rappresentativi, non solo la home | percorso del file nello stack trace | Se il risultato cambia, il livello appena isolato partecipa direttamente al problema. |
| 6 | separare TTFB, LCP, CLS e INP | versione e data di aggiornamento del componente | Se non cambia, conserva l’esito e passa al livello successivo senza aggiungere altre modifiche. |
| 7 | leggere waterfall, long task e query lente | elenco di mu-plugin e drop-in | Un errore nello stesso timestamp è più significativo di avvisi generici precedenti. |
| 8 | confrontare cache calda e fredda, utente anonimo e autenticato | differenza tra editor e frontend | Confronta sempre il risultato con un caso funzionante dello stesso sito. |
Dopo ogni passo annota “confermato”, “escluso” oppure “non verificabile”. La terza risposta è importante: segnala che serve un accesso, un log o un ambiente di prova, non che la causa sia stata esclusa.
Comandi di sola lettura o a basso impatto
Esegui i comandi solo se hai accesso autorizzato, dalla document root corretta e dopo avere verificato il backup. Sostituisci i domini di esempio e non incollare credenziali nei ticket.
Svuotamento della cache oggetti WordPress, dopo backup e in una finestra controllata
wp cache flush
Come interpretare le evidenze
Le evidenze acquistano valore quando sono correlate. Un singolo warning, una scansione pulita o un test riuscito non bastano da soli a spiegare l’intero flusso.
- Se differenza tra editor e frontend coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se TTFB e tempi server coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se risorsa LCP coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se long task e INP coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se query o endpoint lento coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se percorso del file nello stack trace coincide temporalmente con il sintomo, verifica il componente che lo ha prodotto prima di intervenire su livelli non collegati.
- Se il problema compare soltanto da utente anonimo, controlla cache, cookie e differenze di rendering.
- Se compare soltanto da amministratore, verifica nonce, capability, plugin amministrativi e cache privata.
Esempio di diagnosi ragionata
Supponiamo che il problema compaia subito dopo un aggiornamento, ma soltanto sul frontend anonimo. Il log non mostra fatal error e l’HTML contiene ancora il componente. Questo insieme di indizi rende più probabile una cache o un asset incoerente rispetto a un database danneggiato. La prova corretta è bypassare i livelli di cache e controllare lo status dell’asset, non reinstallare WordPress.
Interventi possibili e rollback
Applica l’intervento minimo che risolve la causa confermata. Ogni azione deve avere un criterio di rollback e non deve distruggere le informazioni raccolte.
1. Usare dimensioni fluide e clamp quando appropriato
Non aggiungere altre ottimizzazioni nello stesso passaggio: altrimenti non saprai quale variazione ha prodotto il risultato.
2. Ridurre posizionamenti assoluti e margini negativi
Se il test fallisce, ripristina la condizione precedente e conserva l’esito nel registro dell’intervento.
3. Testare orientamento, zoom e testi lunghi
Prima di procedere salva configurazione e valore precedente. Dopo la modifica ripeti il test che aveva riprodotto il problema.
4. Intervenire sul collo di bottiglia misurato
Non aggiungere altre ottimizzazioni nello stesso passaggio: altrimenti non saprai quale variazione ha prodotto il risultato.
5. Ridurre lavoro server, peso asset o JavaScript secondo la metrica
Se il test fallisce, ripristina la condizione precedente e conserva l’esito nel registro dell’intervento.
6. Proteggere checkout e funzioni dinamiche durante minificazione e cache
Prima di procedere salva configurazione e valore precedente. Dopo la modifica ripeti il test che aveva riprodotto il problema.
7. Confrontare mediane di più test e non un singolo punteggio
Non aggiungere altre ottimizzazioni nello stesso passaggio: altrimenti non saprai quale variazione ha prodotto il risultato.
Cosa non fare
- ottimizzare solo il punteggio iniziale
- modificare più componenti contemporaneamente
- cancellare file o dati prima di conservarne una copia
- considerare risolto il problema dopo un solo test
- lasciare debug o strumenti temporanei attivi in produzione
- nascondere l’errore con CSS globale
- cambiare immagini senza verificare gli URL
Verifica finale
La scomparsa del messaggio non basta. Il controllo finale deve coprire il flusso principale, gli effetti collaterali e il comportamento dopo il ripristino di cache, firewall o automazioni temporaneamente disattivate.
- cache e servizi esterni sono stati riattivati e verificati
- asset restituiscono 200 con MIME corretto
- il componente è visibile a più viewport e utenti
- interazioni chiave rispondono stabilmente
- non compaiono nuovi errori JavaScript
- la funzionalità principale completa l’intero flusso senza errori
- i log non registrano nuove anomalie durante più prove
Registra data, versione, modifica applicata e risultato. Per problemi intermittenti osserva il sito per un intervallo coerente con la frequenza del guasto; un test immediato può non intercettare cron, cache o webhook che lavorano in seguito.
Prevenzione e monitoraggio
La prevenzione utile non consiste nell’installare molti strumenti, ma nel ridurre variabili sconosciute e rendere disponibili dati affidabili quando qualcosa cambia.
- definire componenti fluidi
- evitare altezze fisse per contenuti variabili
- monitorare pagine chiave
- imporre budget per immagini e script
- verificare prestazioni dopo aggiornamenti
- provare gli aggiornamenti in staging
- rimuovere componenti abbandonati o duplicati
Per i siti con vendite, lead o integrazioni esterne, aggiungi alla manutenzione un test funzionale reale ma controllato: apertura modulo, ricezione email, ordine di prova, webhook, login e verifica della sitemap secondo il tipo di sito.
Riferimenti ufficiali
I percorsi e i comandi possono cambiare tra versioni. Prima di intervenire, confronta la procedura con la documentazione della versione installata e conserva un rollback verificato.
Domande frequenti
Ctrl+F5 svuota la cache del server?
No. Forza soprattutto il browser; cache applicativa, server e CDN devono essere gestite separatamente.
Una cache può nascondere un errore già corretto?
Sì. Può continuare a servire HTML o asset precedenti finché non viene invalidata.
overflow-x:hidden è una soluzione?
Può nascondere il sintomo, ma può tagliare contenuti e controlli; va individuata la causa.
Perché il problema appare solo su iPhone?
Viewport, font, controlli nativi e comportamento flex possono differire; serve test su browser reali o affidabili.
Quanto tempo serve per diagnosticare wordpress non carica CSS e JavaScript?
Non esiste un tempo affidabile senza conoscere accessi, frequenza del problema e qualità dei log. Una buona raccolta iniziale riduce i tentativi e consente di stimare il lavoro dopo i primi controlli.
È meglio intervenire direttamente sul sito online?
Solo per verifiche a basso impatto. Modifiche a plugin, database, pagamenti, sicurezza o infrastruttura dovrebbero essere provate in staging o accompagnate da backup e rollback verificati.