Indice dei contenuti dell'articolo:
WordPress è scritto principalmente sul linguaggio di scripting PHP ed è senza dubbio una delle parti che hanno il maggiore impatto su tutti i siti WordPress esistenti. Le parti principali non solo del backend ma anche del front-end dell’interfaccia e della pagina di WordPress esistono a causa di PHP, oltre ovviamente a tutti i plugin e tutti i temi.
Ci offre anche la possibilità di fare così tanto quando si tratta di creare un sito Web, poiché non lo troviamo solo nei modelli di pagina e nei plug-in, ma, in aggiunta a ciò, costituisce tutti i file che formano la dashboard di WordPress. In breve, senza PHP il tuo sito web non esisterebbe nemmeno. Questo post riguarda la comprensione e la correzione dell’avviso di versione PHP obsoleta in WordPress
Tuttavia, PHP non è qualcosa che devi padroneggiare per utilizzare l’applicazione ovvero il CMS, poiché gli utenti occasionali sono in grado di gestire felicemente i loro siti Web senza la necessità di sapere come scrivere una singola riga di codice HTML, PHP, JavaScript o CSS.
Qualcosa che invece tutti gli utenti di WordPress debbono conoscere su PHP è l’enorme effetto che ha sulla sicurezza e sulle prestazioni dei loro siti Web. Questo linguaggio di scripting server side è progressivamente migliorato nel tempo e continua ad andare nella giusta direzione ad ogni aggiornamento consecutivo. Una nuova versione di PHP esce sul mercato quasi una volta all’anno. Per ogni versione branch del linguaggio, c’è un supporto costante di due anni interi. Il terzo anno otterrebbe solo gli aggiornamenti assolutamente critici per quanto riguarda la sicurezza; quindi, la tua versione PHP non fa parte di quei task che puoi impostare una volta per poi dimenticartene.
Un enorme problema che la comunità di WordPress sta affrontando è il fatto che molti siti, aziende, sviluppatori e provider di hosting non supportano le ultime versioni del linguaggio di scripting. È particolarmente frustrante se consideriamo quanto sia facile e veloce possiamo aggiornarlo.
La durata delle versioni precedenti di PHP sta finendo per il tuo WordPress
Al 14 settembre 2022, l’ultima versione di PHP è la 8.1. È anche senza dubbio il più grande fino ad oggi. Le versioni 5.5, 5.6 e persino 7.0 hanno ora raggiunto lo stato EOL (End of Life). È una parte standard di ogni ciclo di rilascio di PHP. Una volta che una determinata versione raggiunge la sua EOL, PHP eliminerebbe le disposizioni di supporto per la sicurezza per essa.
Se ti stai chiedendo: “non è stato appena rilasciato PHP 8.0?!” – era ben 1 anno e 9 mesi fa. E per essere precisi, PHP 8.1 ha iniziato a ricevere aggiornamenti di sicurezza solo dall’inizio di dicembre 2021. Il supporto attivo per PHP 7.4 è stato interrotto anche prima della data finale per il supporto di sicurezza della ver. 7. Inoltre, il supporto per la sicurezza per 7.4 termina a breve ovvero all’inizio di dicembre 2022.
Secondo la pagina ufficiale delle statistiche di WordPress.org , al momento della pubblicazione di questo articolo, circa solo il 56% degli utenti ha già eseguito l’aggiornamento a una versione PHP supportata. Una quantità molto piccola (7%) utilizza PHP 8, e solo lo 1% utilizza effettivamente la versione 8.1 del linguaggio di scripting appena rilasciata. Quello che possiamo vedere è il fatto che la maggior parte degli utenti – oltre il 34% – continua a girare su PHP 7.3, PHP 7.2 e la 7.1. Ciò che è ancora più spaventoso è che circa la metà degli utenti di WordPress utilizza versioni di PHP obsolete e non più supportate.
Perché WordPress richiede versioni più recenti di PHP?
A dicembre 2018, al WordCamp US, fu annunciato un attesissimo punch nel requisito minimo per la versione PHP su un sito WordPress. Matt Mullenweg suggerì durante il suo State of the Word 2019 che la 5.6 fosse la versione minima fino alla metà del 2019 e che venisse nuovamente aggiornata alla versione 7.0 di PHP nella seconda metà dell’anno. Tutto questo sarà un dato di fatto nel caso nulla vada storto. Questa affermazione è stata enormemente applaudita: ha ricevuto molti più elogi rispetto alle notizie precedenti su Gutenberg.
Tuttavia, l’ annuncio da parte del team di WordPress fu una grande sorpresa per l’intera comunità di WordPress. Naturalmente, continuare con le ultime versioni di PHP è una notizia più che gradita, anche se la versione minima di PHP necessaria per eseguire un sito basato su WordPress non è stata toccata per anni. Tutti questi cambiamenti erano attesi da molto tempo sono diventati poi degli standard de facto.
Il Core Team di WordPress ha la responsabilità di gestire i CMS più utilizzati al mondo. Detto questo, hanno preso l’impegno di assicurarsi che WordPress mantenga il passo con PHP nei prossimi anni e che funzioni per aumentare la consapevolezza, insieme a cambiare l’apatia, la consapevolezza o il supporto per le versioni PHP più recenti.
“L’obiettivo immediato è mettere in atto la struttura di supporto e l’istruzione/risorse del proprietario del sito, ecc. In modo da poter ridurre più attivamente il numero di siti WordPress attivi esistenti su versioni precedenti di PHP EOL e quindi migliorare la sicurezza e le prestazioni del web”.
Il piano attuale prevede la visualizzazione di un avviso nel pannello dell’amministratore di back-end per i siti che utilizzano versioni di PHP precedenti al ramo di PHP supportato (in questo caso ad esempio precedenti alla 7.4) Il messaggio di “avviso” conterrebbe un collegamento a una delle pagine di supporto di WordPress che spiega brevemente il problema, seguito da un’immersione nel modo in cui tutti i proprietari di siti possono essere pronti per un aggiornamento della versione sottostante di PHP del proprio server e quindi eseguirlo.
Tali avvisi hanno iniziato ad essere visualizzati come messaggi di notifica a partire da WordPress 5.1, il cui rilascio è avvenuto diverso tempo fa intorno a marzo 2019.
I siti che scelgono di rimanere su PHP 7.3 o inferiore potranno comunque ricevere aggiornamenti di sicurezza e forse alcune correzioni di bug, ma non avranno l’opportunità di utilizzare la versione più aggiornata e principale di WordPress finché non passeranno attraverso la procedura di aggiornamento del proprio PHP.
Prima del tanto atteso rilascio di WordPress 6.0, è stato dichiarato che il CMS mira a supportare completamente la versione 8 di PHP nella sua versione. Attualmente, la pagina dei requisiti ufficiali suggerisce che per eseguire WordPress, il tuo host deve supportare 7.4 o versioni successive.
Tuttavia, c’è la nota ufficiale che afferma:
Anche se WordPress Core continua ad espandere il suo supporto per le nuove versioni di PHP, non c’è alcuna intenzione di abbandonare il supporto per le versioni precedenti fino a quando i numeri di utilizzo non mostreranno che l’impatto sugli utenti sarà minimo.
La storia dietro la funzionalità del Warning di avviso versione PHP obsoleta.
Tutto nasce dalle statistiche di aggiornamento compilate giorni dopo la versione 5.0 di WordPress avevano segnalato che circa l’85% degli utenti stava già gestendo i propri siti Web con PHP 5.6 o versioni successive. Ciò dimostra che una piccola parte della comunità attiva prende atto di questi avvertimenti in generale.
Il team principale di WordPress ha avuto osservazioni su notifiche specifiche con il ruolo di incoraggiare gli utenti a livello globale ad aggiornare le loro versioni PHP e tali notifiche si sono rivelate estremamente efficaci. Con il rilascio di Yoast SEO 4.5 all’inizio del 2017, il loro team ha sperimentato l’utilizzo di un approccio di avviso simile . Yoast ha aggiunto un avviso che invitava i proprietari di siti con versioni PHP non aggiornate ad aggiornarlo. L’unico modo per disabilitare questo avviso era procedere con l’aggiornamento. I risultati hanno mostrato che gli aggiornamenti hanno ottenuto il doppio del tasso rispetto a prima che fosse visualizzata la notifica.
Abbiamo visto che questo avviso ha avuto un grande impatto e ora abbiamo meno della metà degli utenti di PHP 5.2 che ha il core WP. Per quanto fastidioso, funziona. Ecco perché non scommetterei sul fatto che il core team faccia qualcosa di diverso da quello che facciamo noi.
– Joost de Valk, fondatore e CPO di Yoast
Questa iniziativa è stata chiamata il progetto Yoast WHIP e dimostra che il “fastidio” (come chiama de Valk, nel ticket Trac originale che hanno scritto sulla fusione di WHIP nel core di WordPress) gli utenti per l’aggiornamento potrebbe effettivamente portare a un cambiamento che rende tutto migliore per tutti.
Come risultato del progetto WHIP, insieme al positivo aumento del numero di aggiornamenti PHP, a metà del 2017 è stato lanciato il progetto Servehappy .
Perché non puoi semplicemente usare una vecchia versione di PHP per sempre?
Uno dei motivi più importanti per aggiornare la tua versione di PHP è la sicurezza. Il tuo WordPress sarà molto più sicuro se esegue una delle ultime versioni del linguaggio di scripting. Garantirà che la tua azienda sia protetta dalle vulnerabilità più attuali sul “mercato” e verrà anche regolarmente patchata per falle di sicurezza, nonchè importanti migliorie in termini di velocità di esecuzione e performance.
Tra le diverse motivazioni per preferire una versione aggiornata:
- PHP 8 ha già dimostrato capacità di elaborazione dei dati e di carico molto più elevate rispetto ai suoi predecessori. Oltre alle elevate prestazioni, è probabile che ti aspetti un enorme risparmio di memoria. Il motivo è che è stata effettuata un’ottimizzazione sostanziale nelle strutture dati interne.
- I benchmark PHP ufficiali ci mostrano che PHP 8 consente al sistema di eseguire il doppio delle richieste al secondo rispetto a PHP 5.6 e ben il 50% rispetto alla 7.4 a quasi la metà della latenza.
- Dal punto di vista aziendale, PHP 8 offre vantaggi cristallini rispetto ai suoi predecessori, come prestazioni eccellenti, resilienza e utilizzo. È in grado di godere di un vantaggio modesto quando si tratta di WP.
- Le aziende, come alcuni giganti dell’e-commerce, con una grande presenza online troverebbero PHP 8 particolarmente adatto per il loro sito web.
- I requisiti minimi per WordPress sono aumentati.
- In definitiva, gli utenti avranno problemi di compatibilità con plug-in e script incompatibili installati con la loro versione obsoleta.
- Ultimo ma non meno importante, probabilmente la migliore pratica è approvare una versione stabile. Tutte le nuove funzionalità promuovono l’aggiornamento.
Come aggiornare PHP in modo sicuro
Speriamo che ormai ti abbiamo convinto che l’aggiornamento della tua versione PHP è assolutamente necessario se desideri le migliori prestazioni e la massima sicurezza del tuo sito web. La migrazione non è così complicata fintanto che procedi in sicurezza, al fine di garantire che l’aggiornamento non rompa nessuno degli elementi del tuo sito.
Ogni volta che si considera il passaggio a una nuova versione, la cosa che viene presa in considerazione è la compatibilità. Tieni presente che PHP 7 non è compatibile con le versioni precedenti. La cosa principale da tenere a mente è il fatto che se non fossi stato diligente nella manutenzione del tuo software WordPress, alcuni script, plugin o temi potrebbero non essere compatibili con versioni specifiche di PHP che si desidera utilizzare. Inoltre, potrebbero non funzionare nel modo previsto. Inoltre, una versione errata di PHP potrebbe danneggiare in tutto o in parte il tuo sito. Naturalmente, è possibile che il codice del plugin o del tema dipenda completamente dalla versione precedente. In definitiva, possiamo sempre provare l’aggiornamento e il downgrade in caso di problemi.
Passaggio 1: mantieni la calma e crea sempre backup prima di eseguire l’aggiornamento
Molto probabilmente, quando aggiorniamo PHP, è tutto rose e fiori. Tuttavia, non si può mai garantire che tutto andrà secondo il nostro piano di gioco. Nel caso in cui si verifichi un problema, vogliamo e dobbiamo avere un backup e rimontare il sito web. Tutto questo è molto più semplice se hai già un backup pulito e brillante del tuo sito.
Il backup regolare del tuo sito Web è già una cosa che facciamo gratuitamente, insieme ai nostri servizi. Tuttavia, ti consigliamo di avere un nuovo backup a portata di mano del tuo sito al tuo fianco, in modo da poter ripristinare facilmente le modifiche nel caso in cui qualcosa vada anche leggermente storto.
Invitiamo tutti a generare un backup manualmente prima di premere il grilletto e aggiornare i propri siti Web live.
Passaggio 2: crea una copia di staging locale del tuo sito web
È sempre l’idea migliore testare la versione PHP più recente in un ambiente di staging o di sviluppo piuttosto che sul tuo sito live. Questo sito Web di staging fungerà da copia duplicata del tuo sito Web live esistente, inserito in una sottocartella della directory principale. Tieni solo a mente che una volta creato un sito di staging come quello, imposterà automaticamente quella copia in modo che sia la stessa versione PHP del tuo sito live.
Quindi dovresti cambiare la versione PHP desiderata per directory. Puoi facilmente raggiungere questo obiettivo impostando regole personalizzate per ciascuna cartella.
Puoi quindi procedere ed eseguire test sul sito di staging per valutare la compatibilità dei tuoi temi e plugin attuali e scoprire come reagisce. Assicurati di controllare il registro degli errori per eventuali errori. Se non accade nulla di insolito, puoi successivamente procedere con l’aggiornamento del tuo sito live.
Passaggio 3: aggiorna tutto
Prima di iniziare, dobbiamo assicurarci che i tuoi plugin e tutto il resto siano aggiornati. In questo modo, verificheremmo la compatibilità con le ultime versioni di tutto, ottenendo così le migliori possibilità di successo nella nostra missione.
In questo modo, non dovrai più andare in giro per aggiustare le cose. Assicurati di fare clic sul pulsante che dice “Aggiorna” ovunque sia necessario.
- Aggiorna WordPress stesso
- Aggiorna il tuo tema
- Aggiorna tutti i plugin
Passaggio 4: verifica la compatibilità
Ora arriva la parte in cui controlli gli errori da parte tua. Le cose che stai cercando e ciò che potresti essere in grado di trovare possono variare notevolmente. Tutto dipende dalla configurazione unica che hai. Tuttavia, ecco la nostra raccomandazione per l’ordine in cui esegui il test:
- Fatti strada attraverso ogni pagina del sito e cerca gli elementi che hanno smesso di funzionare all’improvviso.
- Controlla tutti i plugin uno per uno e vedi se si comportano come dovrebbero.
- Testa le funzionalità che includono i tuoi temi attivi. Assicurati che tutto funzioni ancora correttamente.
- Inoltre, vai al
wp-config.php
file: imposta la variabileWP_DEBUG
cometrue
. Visualizzerebbe tutti gli errori e gli avvisi.define('WP_DEBUG', true);
Passaggio 5: aggiorna il tuo sito live
Una volta completata la fase di test, segui i passaggi per procedere con l’aggiornamento.
A quale versione devo aggiornare?
Non possiamo sottolineare abbastanza quanto sia altamente raccomandato l’aggiornamento all’ultima versione di PHP se il software del tuo sito può farlo senza problemi. L’ultima versione deve essere supportata più a lungo ed è anche quella con il maggior numero di correzioni che migliorano le prestazioni complessive di un sito web.
E se qualcosa non funziona dopo l’aggiornamento come debbo comportarmi?
Qui entriamo in un ambito complesso in cui andremo a fare delle considerazioni tecniche su quello che abbiamo scritto fino ad ora, che è in fondo un po’ quello che narra la comunità internazionale fatta da sviluppatori che forse hanno avuto poco a che fare con la sistemistica.
Innanzitutto, vale quanto sopra scritto, ovvero quando potete aggiornare l’interprete PHP dovete aggiornare l’interprete PHP, non esistono motivi come la pigrizia e il procrastinare a tempo indeterminato.
Tuttavia, non sempre è possibile aggiornare l’interprete PHP all’ultima versione per motivi di compatibilità, funzioni deprecate, plugin non più supportati, varie ed eventuali.
Abbiamo clienti che ancora girano su PHP 5.3, versioni di WordPress 3.5 customizzate a livello di core, roba fantascientifica per intenderci che tuttavia funzionano bene, portano utili e profitti e non possono essere aggiornate se non con un lavoro estenuante e un investimento di decine di migliaia di euro.
In questo caso il consiglio è sempre quello di aggiornare alla versione più recente aggiornabile.
Abbiamo un PHP che gira sulla versione 5.2 o 5.3? Non possiamo portarlo alla 8, non possiamo portarlo alla 7, ma proviamo almeno a portarlo all’ultima release del ramo 5, ovvero la 5.6 e se tutto funziona lasciamolo girare con quella versione, nel frattempo che ci si adopera a correggere i problemi di codice per fare un upgrade ad una versione recente, possibilmente l’ultima.
In queste situazioni va necessariamente focalizzata l’attenzione su aspetti come la sicurezza, il backup ed il disaster recovery.