Guida per risolvere i problemi di un sito WordPress

Risolvere i problemi in WordPress

Quando si hanno problemi con un sito WordPress la parola d’ordine è “niente panico“.

Anche quando il nostro sito restituisca una pagina bianca – caso comunque che analizzeremo successivamente – non dobbiamo sentire la nostra attività a rischio.

Tutte le attività, online e offline, presentano delle difficoltà ed è impossibile non avere mai problemi.

Quindi cosa fa la differenza?

Il Problem Solving, ovvero la capacità di sapere analizzare una situazione: usare calma, logica e un processo per poterla risolvere.

Come evitare catastrofi

Quando si va in battaglia non bisogna essere degli sprovveduti.

Dobbiamo sempre avere “il famoso piano B “.

Soprattutto se il sito web è la base del tuo business, allora non ci stancheremo mai di dirti “Devi avere un backup” a portata di mano, sempre.

Quando bisogna spiegare a un cliente cosa sia un backup, la definizione migliore che possiamo dare è: “Il backup è quella cosa che andava fatta prima“. Reso l’idea, vero?

Ci sono diversi modi di fare un backup, come spiegato nel video corso di WordPress, ma quello che consigliamo è di affidarci a un backup schedulato e gestito tramite la propria azienda di hosting.

SiteGround offre il backup gratuito (con possibili servizi aggiuntivi a pagamento).

In momenti di panico, avere un supporto come quello che offre questa azienda può fare la differenza.

Dedica del tempo su questo argomento e recupera informazioni per sapere “se” e quale tipo di backup viene offerto dal tuo hosting.

Impara a fare da solo

Evitiamo esperienze negative agli utenti

Se reputi che l’errore renda il tuo sito impresentabile, allora, prima di dare un’esperienza negativa ai tuoi utenti, devi metterlo in manutenzione.

Se il sito WordPress è ancora funzionante puoi installare il plugin WP Maintenance Mode. Grazie a questo plugin, qualsiasi richiesta di pagina verrà “deviata” sulla tua pagina di manutenzione “Il sito è momentaneamente…“.

Consiglio di avere sempre questo plugin presente nell’arsenale del tuo sito WordPress, anche se non attivo. In questo modo non dovrai perdere tempo nel scaricarlo e installarlo – fattore che durante un errore potrebbe non essere possibile.

In casi estremi, se siamo impossibilitati nell’utilizzare il plugin, possiamo sempre mettere il sito in manutenzione manualmente.

Il procedimento da seguire

Ricordiamoci in primo luogo che un sito WordPress è una creatura risultante dall’unione di diverse parti: i plugin, il tema e WordPress.

Saranno questi gli elementi da investigare in sequenza.

I Plugin

Se abbiamo un sito funzionante che all’improvviso risulta avere problemi, con molta probabilità potrebbero venire dai plugin.

Ovvio, se ne hai appena installato uno nuovo e il problema compare subito dopo la sua attivazione, allora è abbastanza ovvia la causa del mal funzionamento.

A volte però possiamo essere tratti in inganno. Nel senso che l’installazione di un plugin può causare un problema, che però è correlato con un altro plugin o con il tema stesso: siamo in una condizione di conflitto fra i codici delle varie parti.

In linea di massima, se non abbiamo individuato il responsabile, dobbiamo procedere con la disattivazione dei plugin.

Per farlo basta andare nella sezione relativa, selezionarli e dal menu a tendina scegliere “Disattiva” per poi premere il pulsante “Applica“.

Disattivare plugin WordPress

Fatto questo possiamo procedere con la riattivazione di un plugin alla volta, fino ad arrivare all’identificazione del responsabile.

Trovato il colpevole non ti rimane altro da fare se non andare su WordPress.org alla pagina del plugin – o nell’area ticket se il plugin lo hai comprato – e descrivere quello che è successo agli sviluppatori. Per loro è importante sapere se il codice ha dei bug, così potranno correggerli e rilasciare subito una nuova versione.

Disattivare un plugin manualmente

Se la condizione è più grave, allora potresti non poter accedere all’area di amministrazione di WordPress.

In questo caso devi accedere ai file del tuo sito tramite FTP o il File Manager.

Tutti possono accedere via FTP al proprio spazio di hosting, ma non tutte le aziende di hosting mettono a disposizione il File Manger.

Che sia con l’uno o con l’altro, quello che devi accedere alla cartella dei plugin – public_html/wp-content/plugins – e rinominare la cartella, per esempio con “nomeCartellePlugin.disattivato“.

Disattivare plugin da cartella di WordPress

WordPress vedendo che hai aggiunto .disattivato capisce che stai attuando un piano di emergenza e ti disattiva il plugin.

Per disattivarli tutti in un colpo solo devi rinominare, con lo stesso metodo appena visto, direttamente la cartella “plugins“.

Disattivare i plugin da database

In ultimo, per spingerci un po’ nel tecnico, possiamo disattivare i plugin anche da database.

Mettere le mani all’interno del database è un operazione molto delicata, che potrebbe portare i non esperti e causare danni. Quindi procedere con cautela e un backup alle spalle.

Per accedere al database possiamo utilizzare il phpMyAdmin, applicazione accessibile tramite il cPanel.

Accesso phpMyAdmin da cPanel

Una volta entrato, seleziona il tuo database dalla colonna di sinistra e accedi alla tabella (wp)_options.

Verso la options_id numero 33 trovi nella colonna option_name la riga chiamata active_plugins.

Al corrispettivo valore option_value trovi un array serializzato.

Non ti preoccupare, perché dovrai solo modificarlo – facendo doppio clic o premendo il tasto Modifica.

Copia prima il suo contenuto e salvalo su un documento di testo, così da poter ritornare velocemente nella condizione di partenza.

Poi inserisci il seguente valore:

a:0:{}

Ecco un’immagine che ti aiuterà a visualizzare meglio dove fare questa operazione.

Disattivare plugin da phpMyAdmin

Una volta che il tuo array – che prima conteneva i plugin attivi – sarà impostato come array vuoto, tutti i plugin del tuo sito saranno disattivati.

I temi

Come abbiamo appena visto, il problema potrebbe venire da un plugin.

Ma cosa ci dice che, in verità, è il tema la causa poiché va in conflitto con il plugin appena installato?

Ne abbiamo avuto un esempio poco tempo fa, quando il massiccio aggiornamento a WooCommerce 3.0 ha causato a molti siti la rottura delle funzionalità di base.

Potevamo pensare che era colpa del plugin, visto che lo avevamo appena aggiornato, ma invece non era così.

Semplicemente molti temi non erano ancora stati resi compatibili al rilascio di WooCommerce 3.0.

Quindi, prima di attribuire la colpa, dobbiamo fare un test sul tema in uso.

La verifica più veloce è attivare il tema di default di WordPress, per esempio l’ultima versione della serie Twenty – Twenty Sixteen, Twenty Seventeen ecc…

Andiamo in Aspetto > Temi e attiviamola. Se con questo tema il problema non sarà presente, allora dovremo aspettare che il tema precedentemente installato venga reso compatibile.

Il core di WordPress

WordPress di per se ha probabilità minori di creare problemi rispetto a un plugin installato dalla repository di WordPress.

Ricordati che i plugin possono essere caricati da qualsiasi sviluppatore e non abbiamo la certezza del 100% che siano stati programmati a regola d’arte. È per questo che guardare il numero di installazioni attive, commenti e voti è sempre cosa buona e giusta.

Questo non esclude sempre il problema inverso, ovvero che altro codice aggiunto – da plugin e temi – possono andare a inclinare la compatibilità con un aggiornamento di WordPress.

Quindi, oltre, al famoso backup prima di un aggiornamento è utile andare nelle pagine dei vari plugin installati e verificare a priori che siano compatibili con la versione di WordPress che stiamo per aggiornare.

“Ma io non ho toccato niente!”

Un concetto generale è quello di prendere visione di questo fatto: se un sito prima andava e ora non va più, deve essere successo qualcosa.

Il “Ma io non toccato niente” non viene nemmeno preso in considerazione – escludendo attacchi hacker o altri casi particolari – nel 99% dei casi, qualcosa è stato fatto.

Da vero segugio devi andare a ritroso e pensare a tutti gli interventi che sono stati eseguiti sul tuo sito.

Tieni in considerazione che l’errore potrebbe essere stato compiuto tempo addietro, ma non lo avevi scovato fino ad oggi.

Quindi fai mente locale, piuttosto fatti ipnotizzare se non ti ricordi – o prendi nota dei lavori importanti quando li esegui – ma cerca di ricomporre il percorso per poi seguirlo.

Se proprio non riesci a venirne a capo, allora potresti chiedere alla tua azienda di hosting se sono stati fatti degli aggiornamenti lato server.

Errori comuni dei siti WordPress

Molte volte gli errori non sono “originali”.

Intendo che l’errore verificato sul tuo sito probabilmente è già stato affrontato da altri utenti.

Quindi una ricerca in Google non può che fare bene e, la maggior parte delle volte, troverai direttamente la soluzione.

Affrontiamo quindi gli errori “comuni” e prepariamoci per saperli fronteggiare repentinamente.

Pagina non trovata – file .htaccess e permalink

Quante volte ci siamo trovati di fronte a una “Pagina non trovata“.

La buona notizia è che con un 98% di probabilità la causa è nella struttura dei permalink che non è stata aggiornata.

Per farlo vai in Impostazioni > Permalink e, senza toccare nulla, premi il tasto Salve le modifiche che trovi in fondo alla pagina. Questa operazione aggiorna il file .htaccess e la struttura delle tue URL.

Una delle possibili cause è quando si installa un plugin o un tema che crea delle nuovo strutture – per esempio tuosito.it/citazione/citazione-del-giorno/ – ma non fa il refresh dei permalink o qualcosa è andato storto.

Per non sapere ne leggere ne scrivere, visto che ci vuole così poco, aggiornare i permalink è una delle prime cose che faccio quando mi viene chiesta consulenza ad un problema di questo tipo.

Schermo bianco

Per fortuna questo brutto scenario non è molto frequente.

Il fatto di non avere un feedback ci lascia smarriti: “Ok, ed ora? Pausa caffè?“.

WordPress schermo bianco

Una delle cause più frequenti è l’installazione di un nuovo tema non andata a buon fine.

Come prima cosa procedi nel pannello di amministrazione di WordPress, ricordandoti che la URL è tuodominio.it/wp-admin oppure tuodominio.it/cartella/wp-admin, dove per cartella si intende la cartella dove hai installato i file di WordPress (public_html, www ecc…).

Se noi riesci ad accedere prova ad effettuare nuovamente il login, andando in tuodominio.it/wp-login.php.

Una volta dentro riattiva un vecchio tema funzionante, oppure il classico Twenty.

Se non puoi accedere nemmeno dal pannello, allora, seguendo il procedimento simile visto per i plugin, accedi via FTP o tramite File Manager, vai in wp-content/themes e rinomina come desideri la cartella contenente il tema appena installato. In questo modo il tema verrà disinstallato.

Lo schermo bianco potrebbe essere dovuto anche ai plugin, pertanto rivedi la sezione che gli abbiamo appena dedicato.

In ultimo, se stavi caricando dei file via FTP o dal File Manager, controlla se non hai accidentalmente spostato qualche cartella.

500 internal server error

Se andando sul tuo sito ti viene restituito un messaggio come “500 Internal Server Error” allora vuol dire che ci sono stati dei problemi lato server, il quale non è stato in grado di elaborare la richiesta.

Il problema in questo caso è che non abbiamo indicazioni che ci aiutano a capire dove sta l’errore.

Come ormai hai capito, prova a disabilitare plugin e tema. Se non dovesse bastare prosegui con la lista qui sotto.

File .htaccess

Potrebbe essere il file .htaccess configurato male o che si è corrotto.

Accedi quindi al tuo server via FTP, vai alla root del sito e rinomina il file “.htaccess_vecchio”.

Prova ad accedere nuovamente al pannello di amministrazione e rigenera i permalink come spiegato precedentemente.

Memoria non sufficiente

Potrebbe essere che il tema o i plugin in uso abbiano bisogno di più memoria.

Per aumentarla entra via FTP, vai nella cartella wp-content e scarica il file wp-config.php.

Aggiungi quindi la seguente riga prima di quella in fondo dove c’è scritto “/* That’s all, stop editing! Happy blogging. */“:

define('WP_MEMORY_LIMIT', '64M');

Salva e ricarica il file.

Ora il tuo sito ha a disposizione 64M di memoria. Se non dovesse bastare puoi provare ad alzarla nuovamente a 128M.

Il problema della memoria, risolvibile con questo sistema, potrebbe presentarsi anche con avvisi quali:

Fatal error: Allowed memory size...

File del core di WordPress corrotti

Se i precedenti tentativi non avessero funzionato, allora possiamo percorrere l’idea che dei file del core di WordPress si siano corrotti.

La soluzione è provare a scaricare i nuovamente i file da WordPress.org e ricaricare le cartella wp-admin e wp-includes.

Chiedi supporto al tuo hosting provider

Un ottimo servizio di hosting si vede da questi momenti. Se nonostante tutti gli sforzi non riesci a trovare il bandolo della matassa, allora apri la chat del supporto del tuo hosting provider e chiedi a loro una mano.

Parse Error

A volte capitano degli errori che incominciano con

Parse error: syntax error, unexpected ... in /public_html/wp-content/themes/ ...

Nella cattiva notizia, quella buona è che ci viene indicato il percorso del file che ha creato il problema.

Quindi basterà vedere se punta alla cartella del tema o di un plugin per trovare il possibile responsabile.

Inoltre non tutti i server, per motivi di sicurezza, mostrano queste informazioni, poiché notificano all’utente i percorsi dei file presenti sul nostro sito.

Impossibile connettersi al server

Se non hai mai avuto problemi e ti capita questo errore, allora prenditi del tempo e poi riprova. Con molta probabilità ci sono dei problemi di connessione.

Se però hai fatto delle modifiche alla rete o al computer, allora la causa va ricercata in queste. Per esempio un firewall configurato con restrizioni sulle porte in uscita 80 e 443, un proxy, un antivirus ecc…

Se hai un amico su Skype, allora chiedigli il favore di controllare per verificare se da un’altra connessione è tutto a posto.

Errore di connessione con il database

In questo caso WordPress sta cercando di comunicare con il database, ma non riesce a “contattarlo”.

Accedi al tuo server e scarica il file wp-config.php dalla cartella dove sono presenti i file dell’installazione di WordPress.

Dentro questo file sono dichiarate (definite) le costanti per permettere l’accesso.

Controlla che il nome del database, lo user, la password e l’host, siano effettivamente quelle del tuo database.

define('DB_NAME', 'nomeDB');
define('DB_USER', 'userDB');
define('DB_PASSWORD', 'passDB');
define('DB_HOST', 'localhost');

Queste informazioni le puoi trovare nel cPanel alla voce Database > MySQL Databases.

cPanel accesso ai database

Dove potrai anche reimpostare la password.

Problemi nel caricamento di immagini e file

Quando siamo nel pannello media o stiamo caricando un’immagine direttamente dal editor di WordPress, potrebbe comparire un messaggio di errore nella colonna in alto a destra che dice:

Error: Unable to create directory...

Al 99% è un problema di permessi di scrittura.

Personalmente mi è capitato solo con piccole aziende di hosting che evidentemente non hanno dei controlli attenti per le installazioni WordPress e gli può sfuggire qualcosa.

Per ovviare il problema devi accedere via FTP ed aprire la cartella wp-config. 

Ora andrai a impostare nuovamente i permessi per le cartelle e i file che per la cartella uploads.

Premi il tasto destro del mouse sulla cartella uploads e seleziona dal menu a tendina Permessi File.

Come indicato nella documentazione ufficiale sulle linee guida per la sicurezza di WordPress, le cartelle devono avere permessi impostati a 755, mentre i file a 644.

Questi numeri, senza entrare nel dettaglio, rappresentano chi e cosa possono compiere operazioni di lettura, scrittura ed esecuzione.

Permessi in WordPress per file e cartelle

Impostiamo prima i permessi per le cartelle. Scrivi 755, abilita “Includi le sottocartelle” e “Applica solo alle cartelle“. Premi OK.

Ora pensiamo ai file. Scrivi 644, abilita “Includi sottocartelle” e “Applica solo ai file“. Premi OK.

Riprova a caricare un’immagine per testare il risultato delle operazioni effettuate.

Se vuoi restringere ulteriormente i permessi per le cartelle, puoi anche tentare di impostarli a 744. Se non dovessi avere successo, torna pure a 755.

Non è detto che dopo questa operazione l’errore non torni nel prossimo futuro.

Infatti, a seconda delle impostazioni del server, i permessi potrebbero essere ricambiati al prossimo aggiornamento o manutenzione dello stesso.

In questo caso contatta il tuo provider e fagli presente che ci sono dei siti WordPress sui loro server!

Sei sicuro di volere fare questo?

È un avviso di WordPress che ci viene presentato quando tentiamo di fare delle operazioni con un utente che non ha i permessi per compierle.

Quindi la prima cosa da fare è controllare di essere un admin.

Magari per sbaglio sei autenticato come editore o stai usando un plugin come User Switching per simulare come gli utenti registrati vedono il tuo sito.

Verificata questa ipotesi. Potresti dover effettuare nuovamente il login come amministratore andando su tuosito.it/wp-login.php.

Se nonostante questo l’errore persiste, allora la causa potrebbe essere una mala gestione delle nonces.

Queste altro non sono che delle stringhe identificative a scadenza che hanno il compito di rafforzare la sicurezza e di evitare attacchi del tipo Cross Site Request Forgery (qualcuno che cerca di fregare il server fingendo di essere un admin).

Per risolvere la situazione bisogna andare a ricercare il colpevole fra i plugin e il tema.

Connection Timed Out

Questo problema capita quando l’operazione che viene richiesta al server impiega troppo tempo, pertanto per motivi di sicurezza viene tagliata.

Capita se il server non è troppo prestante, come per esempio negli spazi hosting condivisi, dove ci sono più siti che utilizzano le risorse della stessa macchina.

O può avvenire, logicamente, se stiamo richiedendo un lavoro eccessivo al nostro server.

La prima soluzione da attuare è quella di aumentare la memoria (vedi paragrafo Memoria non sufficiente), oppure impostare il “maximum execution time” nel file di configurazione php.ini (chiedi supporto al tuo provider).

Documentazione ufficiale di WordPress

C’è una pagina sul sito ufficiale di WordPress in cui abbiamo un elenco veramente completo degli errori comuni.

Se, anche dopo avere seguito tutte le indicazioni di questa guida, non avessi risolto il problema, allora ti consiglio di andare su questa pagina e di vedere tutti i link a disposizione, ognuno dedicato a un problema specifico.

– – –

Se questo articolo ti ha aiutato, allora entra nella nostra community condividendolo con i tuoi amici!

4 commenti
  1. Fed
    Fed dice:

    Ciao Lorenzo,
    grazie per i consigli,
    a dire la verità ho ereditato la gestione del sito e lo sto seguendo per un’azienda che basa il suo fatturato proprio su quello.
    Per questo motivo credo che seguirò il tuo consiglio.
    Grazie ancora

    Rispondi
    • Lorenzo Novia
      Lorenzo Novia dice:

      Ciao Fed,

      caspita da quello che mi dici, prima di prenderti anche responsabilità che non ti competono, ti consiglio di affidarti alla Sucuri.
      Fra poco uscirà un articolo sul nostro blog tutto dedicato alla sicurezza, quindi rimani sintonizzato con noi.

      Buona giornata

  2. Fed
    Fed dice:

    Ciao,
    ho un sito che è stato hakerato,
    sono riuscito a ripristinare quasi tutto tranne il fatto che una pagina, che viene correttamente visualizzata, in fase di compilazione non vede il contenuto, se provo ad inserire qualcosa di nuovo non viene pubblicato,
    sapreste darmi qualche dritta?

    Rispondi
    • Lorenzo Novia
      Lorenzo Novia dice:

      Ciao Fed,

      quando un sito viene hackerato ci sono diversi procedimenti da fare.
      Non so con esattezza quello che hai fatto, ma stai attento a non avere backdoor ancora presenti nel tuo sito.
      Magari tutto ti sembra funzionante, ma hanno ancora l’accesso alla tua macchina.
      Inoltre, magari è un consiglio superfluo, ma cambia tutte le password (WordPress, FTP, accoun hosting, database ecc…) e controlla di non avere nuovi account admin. Se hai motli utenti nel tuo sito è facile che ti possano sfuggire.

      Inoltre abbiamo appena pubblicato nel corso di WordPress una sezione nuova con 6 lezioni dedicate alla sicurezza.

      Se vuoi stare tranquillo, visto che questo argmento è molto avanzato e complicato, il consiglio che ti posso dare è quello di contattare la Sucuri, specializzati nei siti hackerati e in WordPress (sono i più famosi al mondo).

      Richiedi la consulenza di esperti in sicurezza informatica, soprattutto se il tuo sito è fonte di reddito o è per te un’attività importante.
      Saranno loro a pensare a tutto e a riconsegnarti un sito pulito.

      Buona giornata

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *