Aggiornamenti di WordPress: come gestirli facilmente

Argomenti:
Pubblicato il: 21-06-2021 16:51

Avere un sito in WordPress pone spesso di fronte ad una tematica sottovalutata, ovvero quella della gestione degli aggiornamenti successiva alla pubblicazione del sito. Se l’obiettivo primario degli aggiornamenti automatici di WordPress è quello di automatizzare la gestione di un sito e renderlo stabile e sicuro, c’è un aspetto relazionato alla gestione che, di fatto, non dovrebbe mai essere sottovalutato. Di fatto, molti gestiscono questo aspetto in modo errato:

  1. da un lato chi fa gli aggiornamenti in modo “cieco” e senza badare alla sostanza di quello che fa, magari introducendo errori o anomalie nel sito (e nel 10% dei casi bloccandolo del tutto!)
  2. dall’altro chi, eroicamente, scansa del tutto il problema e non aggiorna, evitando gli aggiornamenti e lasciando il sito facile preda di hackeraggi e malware.

Entrambi gli approcci sono sbagliati, a proprio modo, ed oggi proveremo a chiarirci un po’ le idee a riguardo.

Aggiornamenti automatici di WordPress: che cosa sono

La lista degli aggiornamenti di WordPress appare periodicamente su qualsiasi sito: ciò avviene mediante un automatismo del CMS, che comunica periodicamente con il repository ufficiale e comunica quando ci sono aggiornamenti da fare. Plugin e theme vengono aggiornati periodicamente, così come il core (cioè il “cuore” del funzionamento di WordPress), e questo sistema è talmente efficente che pure vari plugin a pagamento, mediante i rispettivi siti di distribuzione (ad esempio ThemeForest) ne fanno uso.

Si tratta pertanto di un meccanismo molto funzionale ed estremamente valido, di cui pero’ bisogna essere pienamente consapevoli per evitare che, un giorno, “magicamente” il sito smetta di funzionare. Sono numerosi infatti i casi di potenziali malfunzionamenti nel sito indotti da aggiornamenti non andati a buon fine, una possibilità che non dovrebbe mai essere sottovalutata nonostante il fatto che, soprattutto nelle ultimissime versioni, WordPress abbia imparato a “proteggersi” da queste situazioni inserendo delle logiche di recupero o di fallback nel codice.

Verrebbe da chiedersi perchè, a questo punto, sia così importante aggiornare il proprio sito: un’operazione peraltro molto semplice, e che in nove casi su dieci, in media, non crea alcuna differenza sul normale funzionamento del sito (il caso sfavorevole, per la cronaca, è dovuto quasi sempre a problemi di connettività in fase di aggiornamento, ad aggiornamenti riusciti a metà per questo motivo oppure, ancora, a bug informatici nelle nuove versioni che possono sempre capitare).

Tenere il proprio sito aggiornamento garantisce, in genere, la stabilità e la sicurezza del sito stesso, mettendolo al riparo da eventuali attacchi informatici mirati.

Per inciso: come “recuperare” un sito WordPress dalla “modalità manutenzione”

Sebbene esistano plugin per mandare un sito in manutenzione e renderlo invisibile dall’esterno mentre ci lavoriamo, esiste una modalità manutenzione di default (maintenance mode, spesso notificata dall’errore “briefly unavailable for scheduled maintenance. check back in a minute“) che manda completamente in blocco il sito ed impedisce di accedervi, sia da frontend che da backend. Questa modalità è una sorta di “protezione” che impedisce all’utente di “fare danni” nel sito, e che giustamente può suscitare il panico all’utente meno esperto. Il messaggio è, peraltro, parzialmente fuorviante: fa intuire che il problema si risolverà da solo nel giro di qualche minuto, ma non è così: dovrà essere il webmaster ad intervenire per risolvere.

Il fix o la soluzione, in questo caso, è più semplice di quello che possa sembrare: basta andare nel sito via FTP, puntare la cartella root (la cartella che contiene il wp-config.php, per intenderci, e che può essere ad esempio /var/www/html oppure /public_html), abilitare la visualizzazione dei file nascosti e cancellare il file:

.maintenance

che sarà presente in essa. Cancelliamo il file o rinominiamo con un altro nome qualsiasi: aggiornando nel sito, adesso, tutto dovrebbe ritornare come prima ad una situazione coerente. Se avete aggiornato tutti i plugin in blocco, ad esempio, potreste optare per aggiornare i plugin uno per volta, evitando così il sovraccarico del sito ed avendo una situazione molto più gestibile.

Tipi di aggiornamento: maggiori, minori e di sviluppo

Gli aggiornamenti automatici in background sono presenti fin dalla vecchia versione 3.7 di WordPress, e da allora non sono più stati tolti: di default, ogni sito installato secondo la procedura standard di installazione permette di aggiornare e pianificare periodicamente, mediante ping giornalieri, gli update del nostro sito. Ci sono tre tipi di aggiornamento dentro WordPress, che hanno scopi e funzioni differenti tra loro.

Aggiornamenti di sviluppo o “bleeding edge

Sono gli aggiornamenti che, ad esempio, introducono nuove funzionalità nel sito in WP.

Aggiornamenti di release minori

Questi riguardano manutenzione e sicurezza del sito.

Aggiornamenti di release maggiori

Sono quelli che determinano il passaggio da una versione all’altra un po’ più “in grande”, per dire così.

Di default, WordPress aggiorna in automatico solo le release minori e quelle dei file di traduzione, mentre le altre vanno gestite manualmente dall’utente. Questo comportamento, pero’, può essere modificato agendo sui file di configurazione come descritto di seguito.

Abilitare automaticamente gli aggiornamenti del core di WordPress

In questo caso basta andare nel wp-config.php del proprio sito ed aggiungere la seguente riga:

define( 'WP_AUTO_UPDATE_CORE', true );

e vale in questo caso sia per aggiornamenti minori che maggiori e di sviluppo. Semplice ed efficace, io in genere lascio configurati quasi tutti i siti WP in questo modo.

Disabilitare automaticamente gli aggiornamenti del core di WordPress

Al contrario dell’opzione precedente, possiamo disabilitare gli aggiornamenti automatici, cosa in genere sconsigliata per i siti online ma che, di fatto, può servire in alcuni casi (ad esempio: manuntenzione a pagamento non saldata, fine del contratto di manutenzione, sito “congelato” per altri motivi):

define( 'WP_AUTO_UPDATE_CORE', false );

Aggiornamenti automatici solo di versioni minori e non di versioni maggiori

La costante WP_AUTO_UPDATE_CORE può avere anche un terzo valore, diverso da true e false, che si chiama minor e che implica abilitare solo gli aggiornamenti minori e non quelli maggiori.

define( 'WP_AUTO_UPDATE_CORE', minor );

Esiste anche la possibilità di gestire gli aggiornamenti in Background mediante i filtri di WordPress, ma questa modalità è consigliata solo per chi sviluppa e solo in casi specifici (ed è descritta nella guida ufficiale del Codex di WordPress).

Plugin e theme premium (a pagamento): come gestiscono gli aggiornamenti automatici?

Se è tutto abbastanza semplice lato plugin free (c’è un repository unico, ogni sito WP comunica con lo stesso e notifica quando aggiornare), per i plugin a pagamento tipo ThemeForest è un po’ più complesso: per la verità, la politica adottata dai plugin e dai theme premium è sempre stata un po’ dubbia, secondo me.

Il problema è che il discorso tende a complicarsi, dato che esistono repository di terze parti che vengono gestiti dai realizzatori dei plugin e dei theme (uno su tutti: Freemius), e che non sono per forza “open“: questo comporta un problema apparentemente di poco conto ma da non sottovalutare, perchè non sono plugin monitorati da più programmatori come nel caso dei plugin open, ed eventuali falle informatiche o problemi di sicurezza che spalancano le porte ai malware non vengono sempre monitorati con costanza. Non solo: alcuni repository sono apparentemente chiusi al pubblico, mentre alcuni pubblicano solo i log con gli aggiornamenti (o, ancora più frequentemente, tendono ad aggiornare i plugin con un certo lassismo).

Plugin molto usati (quali, ad esempio, Slider Revolution) o theme con builder visuali (quali Divi o WPBakery), ad esempio, potrebbero in teoria contenere bug “nascosti” che non vengono esplicitamente notificati, ed il fatto che siano utilizzati in massa non vuol dire, ovviamente, che siano perfettamente sicuri da utilizzare. Chiaramente il mio non vuole essere è un “atto d’accusa” contro i plugin premium, ci mancherebbe altro, ma sarebbe gradita la medesima trasparenza usata dal repository di WordPress, che notifica i plugin free non aggiornati da molto tempo (e dopo una certa scadenza temporale, ti impedisce di installarli).

Quando installare un plugin premium, di fatto, decidete non solo di dare loro dei soldi, ma anche di fidarvi della loro politica di gestione. E se vi servono delle personalizzazioni, ad esempio, dovrete farle fare direttamente a loro (eventualmente a pagamento, e ammesso che siano disponibili a farne), costringendovi a vari “adattamenti” alla buona che certo non contribuiscono ad una “salute del sito” ottimale. Se i plugin sono a pagamento ma sono gestiti come software open, ovviamente, il problema delle eventuali personalizzazioni o aggiunta di opzioni mancanti che vi servirebbero non si dovrebbe, in teoria, porre.

Ricevere le notifiche sugli aggiornamenti via email

Di default, WordPress vi avvisa degli aggiornamenti eseguiti con email automatizzate recapitate all’indirizzo di posta dell’amministratore del sito. Questa email possono avere vari esiti, ad esempio:

  • Tutto OK! In questo caso vi arriverà una mail del tipo Il tuo sito è stato aggiornato a WordPress seguito dal numero di versione corrente.
  • Caso intermedio: WordPress [numero versione] è disponibile. Per favore aggiorna!, il che significa che l’aggiornamento automatico non è andato a buon fine. Il sito dovrebbe funzionare ancora, in questi casi, ma è opportuno fare l’aggiornamento manuale della risorsa indicata dal backend del sito.
  • Errore: in questo caso vi arriverà una mail con su scritto qualcosa del tipo: il tuo sito potrebbe essere inattivo a causa di un aggiornamento non riuscito. In questi casi può essere necessario cancellare il file .maintenance nella root del sito, o (a seconda dei casi) effettuare un’analisi più approfondita.

Un esempio di email ricevuta nel caso 1 è la seguente.

Disabilitare la ricezione di notifiche via email

Se non volete ricevere notifiche sugli aggiornamenti via email, per un qualsiasi motivo (e questo vale soprattutto se non vi occupate della parte tecnica: non vi serviranno, di fatto, oppure se avete già qualcuno che si occupi della manutenzione), basta impostare il seguente filtro di WordPress in un plugin personalizzato o nel file functions.php:

apply_filters( 'auto_core_update_send_email', '__return_false' );
4.74/5 (23)

Che te ne pare?

Grazie per aver letto Aggiornamenti di WordPress: come gestirli facilmente di Salvatore Capolupo su Trovalost.it
Aggiornamenti di WordPress: come gestirli facilmente (Guide, Guide per la configurazione di WordPress)

Articoli più letti su questi argomenti:

Seguici su Telegram: @trovalost

SMSHosting Usa il codice PROMO per uno sconto sul primo acquisto: PRT96919