Actualizarea pluginului WordPress Nightmares (My Own Story) și soluții
Publicat: 2022-09-15Iată povestea mea – de coșmar – despre actualizarea WordPress – și lecțiile învățate. Am inclus și câteva îndrumări aproape de sfârșit, ca să nu intri într-o situație ca noi!
Totul mergea bine…
Poate știți că avem o afacere de analiză a comerțului electronic – Putler. Folosim extensia WooCommerce și Abonamente împreună cu multe alte plugin-uri pentru a-și rula backend-ul. Folosim propriul nostru plugin care sincronizează datele WooCommerce cu Putler, așa că obțin toate rapoartele avansate din Putler.
Am construit site-ul Putler în urmă cu aproximativ trei ani, l-am actualizat de 3-4 ori după aceea și lucrurile au funcționat fără probleme. Până acum, bine.
Ceva s-a stricat…
Într-o zi, un client a spus că nu se poate conecta la Putler, în ciuda unui abonament activ.
Deși suna ciudat, acesta a fost într-adevăr cazul. Abonamentul său PayPal era activ, primim plăți lunare, dar în WooCommerce abonamentul său arăta ca „plată nu a primit” / „în așteptare anulare”.
Nu am putut găsi un motiv anume pentru ca acest lucru să se întâmple, așa că l-am numit excepție și i-am marcat manual abonamentul ca „activ”.
Câteva zile mai târziu, un alt abonat a ridicat o problemă similară. Am corectat și asta manual și am cerut administratorului nostru de server să analizeze orice probleme de pe server.
Administratorul serverului a spus că totul este în regulă. Primeam plăți foarte bine, majoritatea abonamentelor se arătau ca active în WooCommerce.. Așa că am ridicat din umeri și am respins-o ca fiind o problemă „temporană”.
Afaceri în pericol...
O săptămână mai târziu, în timp ce analizam cifrele veniturilor lunare, m-am gândit că veniturile noastre lunare au scăzut cu 20% . Acest lucru este neobișnuit pentru o afacere recurentă, așa că am început să mă uit la comenzi îndeaproape.
S-a dovedit că în ultimele două săptămâni, multe comenzi recurente nu au fost procesate. PayPal trimitea notificări pentru primirea cu succes a plății, dar nu au reușit să se conecteze cu abonamentele reale din sistem. În cele din urmă, aceste abonamente au fost anulate din cauza plății restante.
Anularea automată a abonamentelor este o mare problemă. Dacă nu găsim și corectăm acest lucru, am pierde toate afacerile, deoarece sistemul va anula fiecare abonament în timp util.
Eram în flăcări.
Cine e de vină?
Imediat, am remediat vina pe pluginul Abonamente . L-am actualizat acum câteva zile și am crezut că noua versiune o rupe. Am început o depanare extinsă și am trecut prin jurnalele de erori PHP, jurnale WooCommerce, jurnale IPN și ce nu. Am putut ajunge la funcția exactă la care aceasta se rupea. Ori de câte ori a fost primită o notificare PayPal, procesarea a mers bine până la un moment dat, apoi totul a rămas tăcut.
Eram furios. A început să blesteme pluginul Subscription și Brent. Brent Shepherd of Prospress – creatorii pluginului Subscriptions – este de fapt un bun prieten, prin urmare, a-l învinovăți a fost ușor!!
Apoi m-am gândit să-i iau ajutorul – până la urmă este un prieten. Așa că am ajuns din urmă cu Gabor Javorszky (de la Prospress) pe Slack și am descris problema noastră. El a spus că problemele cu PayPal sunt comune și mi-a cerut să trimit toate jurnalele. De asemenea, a sugerat că un alt plugin ar putea cauza problema.
Au trecut deja două săptămâni de la prima plângere și aproape o lună de la începutul problemei. Am escaladat problema la cea mai mare prioritate și am cerut un audit amplu al tuturor.
Două zile mai târziu l-am găsit pe adevăratul vinovat.
Ce păcat…
Era pluginul WooCommerce Putler Connector. Unul dintre propriile noastre pluginuri.
Rușine!!
De fapt, ultima actualizare a pluginului conector a rezolvat exact această problemă. Nu am actualizat la cea mai recentă versiune pe site-ul nostru!
A fost o rușine mai mare!!
Lecții învățate…
Am pierdut o bună parte din venituri, două săptămâni de timp și mulți clienți plătitori doar pentru că am ratat o actualizare a pluginului . Și dacă nu am putea rezolva problema mai devreme, prejudiciul ar fi grav.
Da, cu toții am avut cazuri în care lucrurile s-au înrăutățit imediat după actualizarea nucleului WordPress, a pluginurilor sau a unei teme. Am văzut „ecranul alb al morții”. Ne-am confruntat cu crize pe site-urile live după efectuarea unei actualizări.
Dar asta nu înseamnă că putem lăsa site-urile noastre fără actualizări.
Și da, nu trageți concluzii! (Îmi pare rău, Brent!)
Dilema de actualizare: a fi sau a nu fi??
Efectuarea unei actualizări pe site-ul dvs. live poate fi periculoasă. Neactualizarea site-ului poate fi la fel de periculoasă – dacă nu mai mult. Deci ce faci?
Mai întâi, să recapitulăm de ce ar trebui să ne menținem site-ul la zi...
- Actualizări de securitate – sigur, nu vrem să fim piratați
- Remedieri de erori, actualizări de compatibilitate – avem nevoie și de acestea
- Caracteristici noi – pot fi foarte utile, pot economisi timp
- Asistență – majoritatea pluginurilor premium oferă asistență numai pentru utilizatorii plătiți
Acum să vedem de ce nu ne actualizăm site-urile:
- Actualizări frecvente – un lucru sau altul este mereu actualizat!
- Lipsa de timp – ocupat cu alte responsabilități, actualizarea mai multor site-uri poate consuma foarte mult timp
- Riscul ca o actualizare să distrugă site-ul - o actualizare majoră va necesita cu siguranță testare înainte de a fi pusă în funcțiune, și o actualizare minoră poate distruge un site
- Dezvoltatorul nu este disponibil – dacă altcineva vă gestionează site-ul, disponibilitatea și costul acestora vor fi, de asemenea, un factor
- Site-ul este live; Dacă nu este stricat, nu-l repara – are sens – sau nu?
Ghid suprem pentru actualizarea WordPress - nucleu, pluginuri și teme
Deci, cum ar trebui să abordăm actualizarea WordPress?
Iată câteva îndrumări pe care le respectăm noi înșine :
- Faceți copii de siguranță regulate - atât ale fișierelor WordPress, cât și ale bazei de date
- Examinați jurnalele de modificări pentru a determina dacă este o actualizare minoră sau majoră
- Dacă este o actualizare minoră, mergeți mai departe și faceți-o (totuși, mai întâi backup)
- Actualizați câte un plugin odată
- Testați orice lucru important pe un server de staging înainte de a încerca pe site-ul live
- Confirmați că actualizarea a mers bine
- Dacă există vreun cod personalizat , asigurați-vă că funcționează cu noua versiune înainte de actualizare
- Dacă utilizați o temă secundară , nu actualizați niciodată tema părinte direct pe site-ul live. Testați mai întâi pe mediul de pregătire.
- Actualizările de bază ale WordPress sunt în general sigure!
- Actualizările WooCommerce ar trebui făcute după ce vă asigurați că pluginurile WC pe care le utilizați sunt actualizate. Este mai bine să testați în mediul local/prelucrat înainte de a fi difuzat – mai ales între actualizările majore.
- Nu stocați niciodată copiile de siguranță în folderul wp-content sau chiar public_html
- Putem minimiza impactul efectuând actualizări în mod regulat
Câteva articole excelente despre efectuarea actualizărilor WP:
- Ghidul final de actualizare a WP și Multisite pe WPMU Dev
- Un ghid pentru actualizarea WordPress pe SitePoint
- Actualizarea WordPress – instrucțiuni extinse despre WP Codex
- Cum se actualizează temele WP pe Design Wall
Împărtășește-ți poveștile/cele mai bune practici...
Sper că povestea mea vă ajută să evitați astfel de probleme pentru dvs.. Actualizați des, actualizați cu atenție!
Aveți povești de groază despre actualizarea WordPress? Cum te-ai recuperat de la ei?
Care sunt „cele mai bune practici” pe care le urmați acum pentru a actualiza WordPress / WooCommerce / Plugin-uri / Teme?
Distribuie-le postând un comentariu mai jos! Comentariul tău îi va ajuta pe mulți alții.
Credite de imagine: Helgi Halldorsson, Pixabay, Wikimedia, Giphy