Cele mai frecvente 10 greșeli ale pluginurilor WordPress
Publicat: 2019-08-27Una dintre cele mai de succes caracteristici ale WordPress este că a reușit să încurajeze o comunitate de dezvoltatori care extind funcționalitatea de bază a acestui sistem de management al conținutului prin crearea de pluginuri. Asta și faptul că cota de piață WordPress nu a încetat să crească în ultimii ani este cheia pentru a atrage talente.
Pluginurile WordPress sunt cele mai bune. Știind că, dacă aveți nevoie să vă personalizați site-ul web, puteți face acest lucru doar căutând un plugin care face ceea ce aveți nevoie, vă oferă liniște sufletească. Și, de asemenea, reduce foarte mult costurile.
A nu fi nevoit (în cele mai multe cazuri) să dezvolte soluții personalizate este o ușurare. Democratizează accesul la site-uri web complexe pentru o fracțiune din prețul pe care l-ar costa acum câțiva ani.

Dar nu totul este un pat de trandafiri. Atunci când selectăm un plugin WordPress trebuie să fim foarte atenți. Popularitatea WordPress atrage talentul. Dar atrage și dezvoltatori mai puțin experimentați, care uneori creează plugin-uri care nu au nivelurile de calitate dorite. Detectarea acestora nu este la fel de ușoară precum numărarea numărului de evaluări pozitive pe care le au sau câte site-uri sunt instalate. E mult mai complex.
Ceva ce am suferit în Nelio de când am început să analizăm instalațiile WordPress ale clienților noștri este cantitatea de gunoi pe care o putem găsi instalată acolo. Am văzut lucruri pe care nu le-ai crede...
De aceea, astăzi voi explica unele dintre cele mai comune și curioase probleme pe care le-am întâlnit de-a lungul acestor ani cu pluginurile WordPress.
Lista problemelor cu pluginul WordPress
Aici vă las cu lista de probleme pe care le puteți găsi la pluginurile WordPress. Sunt probleme generice și nu vom da nume specifice de pluginuri care suferă de ele, dar ele există și trebuie să fii atent să le eviți.
Creați tabele suplimentare în baza de date
Baza de date WordPress este o zonă de război. Multe plugin-uri îl extind pentru a adăuga propriile tabele. Acest lucru nu trebuie să fie greșit, dar de cele mai multe ori nu este necesar.

Baza de date WordPress este suficient de generică pentru a nu fi nevoie să adăugați tabele noi pentru ca pluginul dvs. să le folosească. Deci, de ce un dezvoltator vede nevoia de a adăuga mai multe tabele la WordPress? Răspunsul este destul de ușor: confort și ignoranță.
De multe ori este mai ușor pentru cineva cu puțină experiență în WordPress să pună tabele suplimentare și să facă interogări direct în SQL pentru a citi și modifica datele. Aceasta, pe lângă faptul că este o gaură de securitate dacă nu este făcută bine, eviți să folosești meta tabele.
Dacă doriți să extindeți informațiile despre utilizator, aveți tabelul wp_usermeta . Același lucru este valabil și pentru conținut ( wp_postmeta ), comentarii ( wp_commentmeta ) sau chiar termeni de taxonomie (etichete și categorii, cu tabelul wp_termmeta ).
WordPress oferă metode de citire și modificare a acestor metainformații într-un mod standard și sigur. Dacă nu aveți o justificare de performanță, dragă dezvoltator WordPress, nu utilizați tabele suplimentare în pluginurile dvs.
Încărcați scripturi și stiluri proaste
Majoritatea pluginurilor WordPress vor trebui, mai devreme sau mai târziu, să-și încarce propriile fișiere JavaScript și CSS, uneori în panoul de administrare WordPress și alteori pe partea din față a web-ului. Și lucrul trist este că acesta este ceva care este adesea greșit.

Pentru a adăuga un stil CSS sau un fișier JavaScript în WordPress, trebuie să-l așezați în coada standard WordPress. Pentru a face acest lucru, înregistrați-l mai întâi cu funcțiile wp_register_style și wp_register_script și apoi puneți-l în coadă cu wp_enqueue_style și, respectiv, wp_enqueue_script .
Rețineți că aceste funcții vă permit să definiți dependențele pe care le au stilurile și scripturile dvs., astfel încât WordPress gestionează corect dependențele și pune în coadă doar ceea ce aveți nevoie.
Orice altceva este greșit. Și aici chiar și documentația pentru dezvoltatori este de vină. Uitați-vă la exemplele care vin în cârligul wp_head din Codexul WordPress. Dezvoltatorii vor lua asta ca referință, iar apoi ce se întâmplă este că sparg lucrurile?.
Nici nu vă gândiți să folosiți wp_dequeue_script sau wp_dequeue_style pentru a scoate scripturile sau stilurile din WordPress. De multe ori am văzut cum pluginurile scot din coadă versiunea jQuery care vine cu WordPress pentru a le adăuga pe propria lor (care este de obicei învechită) și de acolo totul nu mai funcționează...
Dacă detectați un plugin care nu încarcă corect scripturile și stilurile urmând instrucțiunile WordPress, acesta este un motiv suficient pentru a-l dezactiva din instalare chiar acum.
Nu curățați baza de date când dezactivați pluginul
Acesta este un alt aspect clasic al pluginurilor WordPress și poate cel mai comun pe care îl veți găsi. Pentru a funcționa, pluginurile WordPress vor trebui să adauge înregistrări în baza de date. Problema aici este că atunci când dezactivați pluginul, este obișnuit ca acele înregistrări să rămână în tabelele bazei de date pentru totdeauna.
Pluginurile WordPress nu șterg de obicei datele pe care le creează în baza de date atunci când le dezactivați. Și nu, nu există camion de gunoi care să treacă din când în când și să ia aceste date inutile cu el.
Un plugin WordPress ar trebui să elimine tabelele suplimentare pe care le-a creat și datele pe care le-a adăugat în tabelele standard atunci când utilizatorul îl dezactivează. Dar se întâmplă foarte rar. Vă încurajez să accesați baza de date și să fiți cu ochii pe ea. Cu siguranță vei găsi acolo gunoi inutil.

Dacă dezvoltatorul este atent, dezactivarea pluginului în WordPress vă va întreba dacă doriți să-l dezactivați temporar sau definitiv. Ultima opțiune va șterge toate datele pe care le-a adăugat în timpul funcționării sale, scoțând astfel gunoiul pentru a lăsa totul curat.
Nu oferă îndrumări pentru utilizator
Când instalați un plugin WordPress și îl activați, de obicei vă așteptați să apară un nou meniu pe tabloul de bord WordPress, unde puteți găsi funcțiile pluginului. Dar acest lucru nu este întotdeauna cazul.

Există momente când noul plugin adaugă un meniu într-un meniu existent, de obicei meniul Instrumente sau meniul Setări. Deci, utilizatorul va trebui să investigheze pentru a vedea unde este meniul care include noul plugin tocmai instalat și activat.
De obicei, este o practică bună să descrii în fișierul README.txt al pluginului ce se va întâmpla odată ce activați pluginul în WordPress. Astfel reduceți anxietatea utilizatorului și faceți viața puțin mai ușoară. În caz contrar, dacă utilizatorul nu găsește unde sunt funcțiile pe care le adaugă pluginul, va ajunge să-l dezactiveze, iar ca dezvoltator, acesta este ultimul lucru pe care vrei să se întâmple.
S-ar putea să credeți că acesta este ceva ce li se întâmplă doar începătorilor. Dar nu este cazul. Recent, am instalat un anumit plugin pentru a face anumite lucruri (vă reamintesc că aveam să evit să dau nume?), și m-am trezit în aceeași situație. Nu am putut găsi unde sunt setările pluginului. Și dacă mi se întâmplă mie, care se presupune că lucrez cu WordPress de mult timp, aceeași situație este teribilă pentru cineva cu mai puțină experiență.
Schimbarea interfeței de utilizator WordPress
WordPress este ușor de folosit, sau așa spun ei. Și o parte importantă a acestui lucru este datorită interfeței de utilizator pe care WordPress o include implicit. Această interfață este simplă într-o nouă instalare WordPress, dar devine mai complicată deoarece adăugăm din ce în ce mai multe plugin-uri.

În plus, o problemă comună cu pluginurile WordPress este că acestea folosesc uneori o interfață de utilizator complet diferită de ceea ce utilizatorii se așteaptă să găsească pe tabloul de bord WordPress.

Știu, interfața de utilizator WordPress este oarecum plictisitoare din punctul de vedere al unui designer, dar uneori este mult mai inteligent să urmezi aceleași stiluri și aceeași experiență de utilizator cu care sunt obișnuiți utilizatorii tăi decât să optezi pentru o soluție total diferită.
În pluginurile noastre, încercăm să menținem aceleași stiluri WordPress și să punem fiecare element al interfeței cu utilizatorul acolo unde credem că utilizatorul se așteaptă să apară. Dar am văzut multe interfețe de plugin care seamănă puțin sau deloc cu WordPress, derutând utilizatorii.
Recomandarea este ca dacă sunteți designerul unui plugin WordPress să urmați ghidurile de stil WordPress și chiar să reutilizați componentele pe care acesta le oferă acum pentru a crea interfețe în React, exportate direct din editorul de blocuri Gutenberg. Le folosim în renovarea pe care o facem pentru Nelio A/B Testing și sunt grozave.
Depășirea limitelor proprietății tale
Tabloul de bord WordPress are două tipuri distincte de zone din punctul de vedere al dezvoltatorului. Pe de o parte avem zonele private, care sunt acele pagini pe care le adaugă un anumit plugin. În aceste zone, ar trebui puse în coadă numai stilurile și scripturile CSS incluse de pluginul căruia îi aparțin acele pagini.
Pe de altă parte, avem zonele comune, care sunt toate cele care vin implicit în WordPress. Exemple de zone comune sunt editorul de conținut, editorul de meniu sau widget, setările etc.

Pluginurile bine programate, cele care urmează regulile WordPress, vor pune în coadă scripturile și stilurile care le afectează doar zona privată. Aceasta înseamnă că atunci când pun aceste resurse în coadă, au o condiție în cod pentru a verifica dacă încearcă să o facă pe o pagină privată a proprietății lor sau nu. În caz contrar, nu vor pune nimic în coadă în afara acestui domeniu.
Din păcate, există multe plugin-uri care „uită” să includă această condiție în codul lor. Acest lucru face ca codul și stilurile lor JavaScript să se încarce pe toate paginile în orice moment, ceea ce poate sparge celelalte pagini comune sau chiar pe cele private ale altor plugin-uri.
Detectarea ei este mai ușor decât pare. Dacă utilizați un plugin și interfața sa de utilizator pare defectă, este foarte posibil ca un alt plugin să pună JavaScript sau CSS acolo unde nu ar trebui și să rupă stilurile și comportamentul primului plugin. Am văzut-o. Ni s-a întâmplat nouă (că ne spargă interfața) și, din păcate, se va întâmpla în continuare.
Nerespectarea bunelor practici de programare
Nu trebuie să fii cel mai bun hacker din lume pentru a programa în WordPress, dar este de așteptat o calitate minimă când vine vorba de programare.
Unul dintre beneficiile (dacă nu cel mai mare) ale WordPress este filosofia sa open source. Explorarea codului sursă al pluginurilor este ceva pe care îl puteți face oricând (cel puțin acele plugin-uri în depozitul oficial).

S-ar putea să găsești totul: cod care este plăcut de văzut și cod care te va face să plângi. Și asta nu înseamnă că unul este mai rău decât celălalt din punct de vedere al performanței. Dar dacă vezi un cod bine documentat, bine indentat și, de asemenea, structurat în urma unei distribuții logică a fișierelor și folderelor, ai găsit Sfântul Graal.
Dacă codul unui plugin WordPress este bine de văzut, probabil că programatorul este atent și șlefuit. Acesta este un semn clar de calitate.
Deschiderea găurilor de securitate
Un plugin WordPress nu este altceva decât un set de instrucțiuni de cod. De obicei, PHP și JavaScript, care extind funcționalitatea WordPress. Acest cod va primi în siguranță date de la utilizator și va ajunge să redă informații pe ecran.

Este posibil ca atunci când obțineți date și le imprimați pe ecran să adăugați găuri de securitate dacă nu procesați corect acele date. WordPress pune foarte mult accent pe validarea și igienizarea datelor de intrare și pe evadarea datelor la ieșire.
Există o mulțime de funcții pentru a valida datele și pentru a ne asigura că ceea ce utilizatorul introduce în plugin este cu adevărat ceea ce ne dorim și, astfel, evităm injectarea de cod. Dacă dezvoltatorul pluginului nu le folosește, se datorează lenei sau ignoranței. Ai grijă ce vei instala în WordPress sau vei ajunge să regreti.
Efectuarea de activități necorespunzătoare
Continuând cu secțiunea anterioară, există pluginuri care provin din surse de origine dubioasă. Uneori, pentru a economisi niște dolari, te scufunzi prin locuri întunecate de pe Internet în căutarea unui fișier .zip care să conțină pluginul pe care îl dorești dar pentru care nu vrei să plătești.

Când îl găsești, totul este fericire, până când realizezi că acel plugin vine cu un cadou. De la crawlere, mineri de criptomonede, spam, până la coduri rău intenționate care pot prelua controlul asupra site-ului dvs. Puteți găsi totul.
Fiți atenți la originea pluginurilor pe care le găsiți acolo. Depozitul oficial WordPress și cele mai cunoscute piețe sunt singura sursă de încredere pentru pluginurile dvs. WordPress. Pentru a fi în aceste depozite, dezvoltatorii de pluginuri trebuie să treacă niște teste de calitate. Aveți încredere numai în locuri cunoscute și evitați pluginurile obținute din surse nesigure.
Nu adaugă valoare
Cea mai gravă greșeală pe care o poate face un plugin WordPress este să nu adauge valoare utilizatorilor săi. Ca dezvoltator, uneori ai idei nebunești care crezi că pot fi foarte utile pentru alții. Adevărul este că, dacă pluginul pe care îl aduce este foarte mic, numărul de utilizatori pe care îl va ajunge va fi similar.
Există multe plugin-uri în depozitul oficial WordPress a căror valoare este scăzută. Dar acesta este ceva care se întâmplă în orice piață sau depozit de aplicații.
Dacă, în calitate de dezvoltator, vrei să ieși în evidență față de restul concurenței, concentrează-te pe oferirea de valoare potențialilor tăi. În acest fel, pluginul tău ajunge să câștige popularitatea necesară pentru a deveni un succes în WordPress.
Alegerea pluginurilor WordPress este complicată
Nu totul se bazează pe numărul de recenzii ale utilizatorilor și pe numărarea stelelor. Alegerea unui plugin WordPress bun este complicată. Există multe surprize ascunse care sunt descoperite doar analizând codul sursă al pluginului în sine. Și dacă nu aveți cunoștințele necesare pentru a o înțelege, aveți grijă.
Uitați-vă la comentariile pe care le veți găsi în forumul de asistență pentru pluginuri din interiorul depozitului pentru a vedea ce fel de probleme au oamenii cu el. Încercați pluginul într-un mediu controlat și, dacă vedeți ceva ciudat, contactați dezvoltatorul pentru ajutor.
Dacă după aceasta nu ești mulțumit de ceea ce vezi, caută o alternativă. Există mii de plugin-uri acolo care vă așteaptă. Sau lasă-ne un comentariu mai jos. Căutăm mereu idei de noi plugin-uri interesante de adăugat la colecția noastră.
Imagine prezentată de Goh Rhy Yan pe Unsplash .
