Aggiornamento del plugin di WordPress Nightmares (My Own Story) e soluzioni
Pubblicato: 2022-09-15Ecco la mia storia da incubo sull'aggiornamento di WordPress e le lezioni apprese. Ho anche incluso alcune linee guida verso la fine, quindi non ti trovi in una situazione come noi!
Andava tutto bene...
Forse saprai che abbiamo un'attività di analisi dell'e-commerce: Putler. Usiamo l'estensione WooCommerce e Subscriptions insieme a molti altri plugin per eseguire il suo back-end. Usiamo il nostro plug-in che sincronizza i dati di WooCommerce con Putler, quindi ottengo tutti i rapporti avanzati all'interno di Putler.
Ho creato il sito Putler circa tre anni fa, l'ho aggiornato 3-4 volte e le cose hanno funzionato senza intoppi. Fin qui tutto bene.
Qualcosa si è rotto...
Un giorno un cliente ha detto di non essere in grado di accedere a Putler, nonostante un abbonamento attivo.
Anche se suonava strano, era davvero così. Il suo abbonamento a PayPal era attivo, ricevevamo pagamenti mensili, ma all'interno di WooCommerce il suo abbonamento mostrava "pagamento non ricevuto" / "cancellazione in sospeso".
Non siamo riusciti a trovare un motivo specifico per cui ciò accadesse, quindi l'abbiamo definita un'eccezione e contrassegnato manualmente il suo abbonamento come "attivo".
Un paio di giorni dopo un altro abbonato ha sollevato un problema simile. Abbiamo corretto manualmente anche questo e abbiamo chiesto al nostro amministratore del server di esaminare eventuali problemi sul server.
L'amministratore del server ha detto che va tutto bene. Stavamo ricevendo i pagamenti bene, la maggior parte degli abbonamenti risultava attiva all'interno di WooCommerce.. Quindi ho alzato le spalle e l'ho liquidato come un problema "temporaneo".
Affari in pericolo...
Una settimana dopo, mentre stavo rivedendo i numeri delle entrate mensili, mi sono reso conto che le nostre entrate mensili erano diminuite del 20% . È insolito per un'attività ricorrente, quindi ho iniziato a guardare gli ordini da vicino.
Si è scoperto che nelle ultime due settimane molti ordini ricorrenti non sono stati elaborati. PayPal stava inviando notifiche di avvenuta ricezione del pagamento, ma non è riuscito a collegarsi con gli abbonamenti effettivi nel sistema. Alla fine questi abbonamenti venivano cancellati a causa del pagamento scaduto.
Gli abbonamenti che vengono cancellati automaticamente sono un grosso problema. Se non lo trovassimo e non lo correggessimo, perderemmo tutti gli affari poiché il sistema annullerà ogni abbonamento a tempo debito.
Eravamo in fiamme.
Di chi è la colpa?
Immediatamente, abbiamo risolto la colpa del plug-in Abbonamenti . Lo avevamo aggiornato qualche giorno fa e pensavamo che la nuova versione lo stesse rompendo. Abbiamo iniziato un debug approfondito e abbiamo esaminato i registri degli errori PHP, i registri WooCommerce, i registri IPN e altro. Potremmo raggiungere la funzione esatta in cui questo si stava rompendo. Ogni volta che veniva ricevuta una notifica PayPal, l'elaborazione è andata bene fino a un certo punto, quindi tutto è diventato silenzioso.
ero furioso. Ho iniziato a maledire il plug-in Abbonamento e Brent. Brent Shepherd di Prospress – i creatori del plugin Subscriptions – è in realtà un buon amico, quindi incolparlo è stato facile!!
Poi ho pensato di prendere il suo aiuto: dopotutto è un amico. Quindi abbiamo incontrato Gabor Javorszky (di Prospress) su Slack e abbiamo descritto il nostro problema. Ha detto che i problemi con PayPal sono comuni e mi ha chiesto di inviare tutti i registri. Ha anche suggerito che un altro plugin potrebbe causare il problema.
Erano già passate due settimane dal primo reclamo e quasi un mese dall'inizio del problema. Ho intensificato il problema alla massima priorità e ho chiesto un audit approfondito di tutto.
Due giorni dopo abbiamo trovato il vero colpevole.
Che peccato…
Era il plug-in WooCommerce Putler Connector. Uno dei nostri plugin.
Vergogna!!
In effetti, l'ultimo aggiornamento del plug-in del connettore ha risolto proprio questo problema. Non abbiamo aggiornato all'ultima versione sul nostro sito!
Era una vergogna più grande!!
Lezione imparata…
Abbiamo perso una buona parte delle entrate, due settimane di tempo e molti clienti paganti solo perché abbiamo perso un aggiornamento del plug-in . E se non potessimo risolvere il problema prima, il danno sarebbe grave.
Sì, abbiamo tutti avuto casi in cui le cose sono andate male subito dopo aver aggiornato il core di WordPress, i plugin o un tema. Abbiamo visto lo “schermo bianco della morte”. Abbiamo affrontato una crisi sui siti Web live dopo aver eseguito un aggiornamento.
Ma ciò non significa che possiamo lasciare i nostri siti senza aggiornamenti.
E sì, non saltare alle conclusioni! (Scusa Brent!)
Aggiornamento dilemma: essere o non essere??
Eseguire un aggiornamento sul tuo sito live può essere pericoloso. Non aggiornare il tuo sito può essere ugualmente, se non di più, pericoloso. Allora cosa fai?
Per prima cosa, ricapitoliamo perché dovremmo mantenere aggiornato il nostro sito...
- Aggiornamenti di sicurezza : certo, non vogliamo essere hackerati
- Correzioni di bug, aggiornamenti di compatibilità : abbiamo bisogno anche di questi
- Nuove funzionalità : possono essere molto utili, possono far risparmiare tempo
- Supporto : la maggior parte dei plug-in premium fornisce supporto solo agli utenti a pagamento
Ora diamo un'occhiata al motivo per cui non aggiorniamo i nostri siti:
- Aggiornamenti frequenti : alcune o altre cose vengono sempre aggiornate!
- Mancanza di tempo : occupato con altre responsabilità, l'aggiornamento di più siti può richiedere molto tempo
- Rischio che un aggiornamento interrompa il sito : un aggiornamento importante richiederà sicuramente un test prima di essere pubblicato, anche un aggiornamento minore può far cadere un sito
- Sviluppatore non disponibile : se qualcun altro gestisce il tuo sito, anche la loro disponibilità e il loro costo saranno un fattore determinante
- Il sito è attivo; Se non è rotto, non aggiustarlo – ha senso – o no?
Guida definitiva all'aggiornamento di WordPress: core, plugin e temi
Quindi, come ci si dovrebbe avvicinare all'aggiornamento di WordPress?
Ecco alcune linee guida che stiamo seguendo noi stessi :
- Esegui backup regolari, sia dei file che del database di WordPress
- Esamina i log delle modifiche per determinare se si tratta di un aggiornamento minore o maggiore
- Se si tratta di un aggiornamento minore, vai avanti e fallo (ancora, prima il backup)
- Aggiorna un plugin alla volta
- Prova qualcosa di importante su un server di staging prima di provare su un sito live
- Conferma che l'aggiornamento è andato bene
- Se è presente del codice personalizzato , assicurati che funzioni con la nuova versione prima dell'aggiornamento
- Se si utilizza un tema figlio , non aggiornare mai il tema padre direttamente sul sito live. Testare prima sull'ambiente di staging.
- Gli aggiornamenti principali di WordPress sono generalmente sicuri!
- Gli aggiornamenti di WooCommerce dovrebbero essere eseguiti dopo aver verificato che i plug-in WC che utilizzi siano aggiornati. Meglio testare in ambiente locale/di staging prima di andare in diretta, specialmente tra gli aggiornamenti principali.
- Non archiviare mai i tuoi backup nella cartella wp-content o anche nella cartella public_html
- Possiamo ridurre al minimo l'impatto eseguendo regolarmente gli aggiornamenti
Alcuni articoli eccellenti sull'esecuzione degli aggiornamenti WP:
- Guida definitiva all'aggiornamento di WP e Multisite su WPMU Dev
- Una guida per aggiornare WordPress su SitePoint
- Aggiornamento di WordPress: istruzioni estese su WP Codex
- Come aggiornare i temi WP su Design Wall
Condividi le tue storie/migliori pratiche...
Spero che la mia storia ti aiuti a evitare tali problemi per te stesso. Aggiorna spesso, aggiorna attentamente!
Hai qualche storia dell'orrore sull'aggiornamento di WordPress? Come ti sei ripreso da loro?
Quali sono le "migliori pratiche" che segui ora per aggiornare WordPress / WooCommerce / Plugin / Temi?
Condividili pubblicando un commento qui sotto! Il tuo commento aiuterà molti altri.
Crediti immagine: Helgi Halldorsson, Pixabay, Wikimedia, Giphy