Cadrele WordPress Obține o casă nouă confortabilă – IncludeWP

Publicat: 2016-07-27

La începutul acestui an (martie 2016), echipa de examinare a pluginurilor a emis o declarație pe make.wordpress.org că cadrele nu mai sunt permise în depozitul oficial de pluginuri.

Am decis să ne luăm asupra noastră să creăm un depozit demn pentru cadrele WordPress și am creat IncludeWP. O casă, sau mai degrabă, un clasament, pentru a afișa toate cadrele open-source pentru dezvoltatorii de pluginuri și teme WordPress. Un ghișeu unic pentru dezvoltatori pentru a evalua ceea ce există în prezent pe piață.

A început ca un proiect secundar de weekend distractiv și revigorant pe care echipa hotărâse să-l reunească în urmă cu trei săptămâni și planul era să-l lanseze imediat. Dar, de-a lungul anilor, am adoptat obiceiul de a nu elibera nimic înainte de a obține feedback despre asta de la oameni în a căror părere am încredere, așa că am decis să-mi pun mai întâi câțiva prieteni din comunitatea WordPress.

Am primit feedback grozav și câteva sugestii de interfață de utilizare, dar un comentariu mi-a atras cea mai mare atenție: Luca Fracassi de la Addendio a spus: „Vova, ar fi super tare dacă aș da clic pe un cadru și să văd ce pluginuri și teme îl folosesc de fapt. .”

„La naiba da! Asta ar fi nemaipomenit." M-am gândit. Dar nu există nicio modalitate de a ne petrece timpul căutând manual și adăugând acele pluginuri și teme.

Depozitul IncludeWP a început ca un proiect secundar de weekend distractiv și revigorant pentru echipa Freemius.Tweet

După câteva dus-întors cu Luca, ne-am dat seama că putem folosi API-urile WordPress.org și SVN-urile pentru a identifica automat asocierea pluginurilor și temelor cu cadrele din WordPress.org. Așa că am decis să ne unim forțele.

Luca a petrecut câteva zile dezvoltând o logică de identificare a cadrului și a rulat-o pe .org și a expus cu amabilitate un endpoint API personalizat pentru ca noi să consumăm acele date. Am folosit punctul final al lui Luca pentru a prelua datele despre pluginuri și teme de pe WordPress.org și le-am prezentat sub pagina cadrului.

cadru CMB2

Pluginuri și teme pe WordPress.org care folosesc CMB2

Ne-a luat încă o săptămână să îl finalizăm, dar acum este de 10 ori mai puternic! Dezvoltatorii pot vedea de fapt ce alte produse folosesc cadrul. Și în spiritul open-source, este disponibil pentru uz public pe GitHub.

De ce cadrele, SDK-urile și bibliotecile WordPress sunt grozave?

Reutilizarea codului este minunată! De fapt face parte din fundamentele dezvoltării. Simplu ca buna ziua. Uită-te la WooCommerce, cea mai populară platformă de comerț electronic online, care a început ca un furk al Jigoshop.

În calitate de dezvoltatori, încercăm să ne optimizăm propriul cod și să ne asigurăm că nu există redundanță. Dar când vine vorba de munca altor dezvoltatori, suntem dintr-o dată foarte pretențioși.

Fiind dezvoltator, știu la ce te gândești...

„Nimeni nu poate scrie cod ca mine.” Știri flash: există mulți dezvoltatori talentați, așa că nu mai fiți snob și începeți să reutilizați!

Mai mult, unele cadre sunt folosite de mii de dezvoltatori, implementate pe sute de mii de site-uri web și rulează în producție de mulți ani. Este foarte probabil ca acele biblioteci să fie mult mai rezistente la erori decât codul tău nou scris.

„Pot să-l construiesc singur, nu am nevoie de niciun cadru” – Da, poți! Dar de ce? De ce ai vrea să reinventezi roata? Înțeleg; există o curbă de învățare când nu este codul tău. Dar, pe de altă parte, învățarea unui cadru cu documentație solidă va fi cu siguranță mai rapidă decât dezvoltarea totul pe cont propriu, de la zero.

„De ce am nevoie de capul general? Folosesc doar un mic subset din ceea ce gestionează biblioteca. Hack, cadrul este atât de umflat, este mai mare decât pluginul meu!” – Majoritatea pluginurilor încep doar cu o funcționalitate minusculă. Poate că astăzi este tot ceea ce aveți nevoie, dar pe măsură ce pluginul sau tema dvs. WordPress evoluează, probabil că veți adăuga mai multe lucruri. A avea baze solide îți va ușura viața și îți va economisi mult timp în viitor. Încercați să planificați pe termen lung și alegeți un cadru care se potrivește cel mai bine nevoilor dvs. și foii de parcurs.

Concluzia – nu mai pierdeți timpul rescrierea aceleași lucruri din nou și din nou. Există aproximativ 20 de cadre diferite care se ocupă de câmpuri personalizate

De ce am decis să deschidem proiectul?

Unul dintre motivele pentru care am început cu Freemius pentru WordPress este din cauza comunității sale minunate și a mentalității open-source. Credem ferm în sursa deschisă și în puterea sa, iar aceasta este una dintre modalitățile noastre de a da înapoi ecosistemului.

În al doilea rând, predic despre reutilizarea codului. Cel puțin pot face este să ofer opțiunea altor dezvoltatori de a reutiliza codul nostru pentru proiectele lor. Prin reutilizarea acestei baze de cod, toată lumea poate crea cu ușurință un mini-site de listare de tip de categorie similară pentru depozitele GitHub.

Prin reutilizarea acestei baze de cod, toată lumea poate crea cu ușurință un mini-site de listă de tip categorie similară pentru repozițiile GitHub.Tweet

O capcană a cadrului WordPress - Versiune

WordPress nu este un sistem de operare și nu există silozuri între diferitele pluginuri și teme. De asemenea, nucleul WordPress nu are un mecanism de dependență de biblioteci. Aceasta înseamnă că, dacă două plugin-uri folosesc același cadru cu versiuni diferite, poate declanșa probleme de compatibilitate inversă, poate genera erori și, în cel mai rău caz, poate sparge complet site-ul.

Așa că urmați sfatul meu prietenos: înainte de a alege cadrul, biblioteca sau SDK-ul preferat, ar trebui să vă asigurați că se ocupă de versiunea.

Ar trebui să vă asigurați că cadrul ales se ocupă de versiunea.Tweet

Cum să alegeți cadrele potrivite pentru plugin-ul sau tema dvs

Pai depinde.

Dacă aș începe un nou plugin sau o temă WordPress, m-aș uita la următoarele (nu neapărat în această ordine):

  • Mai întâi aș verifica ce există pe piață pentru a înțelege setul diferit de caracteristici și funcționalități pe care le oferă cadrele.
  • Cu siguranță aș examina popularitatea proiectelor. Proiectele mai populare au probabil o comunitate mai puternică în spate, ceea ce înseamnă că ar trebui să fie mai ușor să obțineți ajutor/sfaturi. De asemenea, probabil înseamnă că principalele erori ale cadrului au fost deja zdrobite.
  • Aș petrece mai mult timp examinând noi cadre. Pe măsură ce practicile de dezvoltare web progresează. De asemenea, nucleul WordPress evoluează, noile cadre pot fi mai eficiente, pot folosi noi mecanisme de bază – faceți mai mult cu mai puțin cod.
  • Mi-aș întreba prietenii mei dezvoltatori din comunitatea WordPress - oameni în care am încredere și care îmi pot oferi feedback sincer pe baza experienței lor.

Am un cadru! cum îl pot adăuga la IncludeWP?

Ușor de păsărit! Site-ul web este un proiect open-source pe GitHub, pur și simplu bifurcați IncludeWP repo, adăugați cadrul dvs. ca <name>.php în folderul src/frameworks și trimiteți o cerere de extragere.

Asigurați-vă că urmați câteva îndrumări simple:

  • GPL: Cadrul trebuie să fie licențiat ca GPL, astfel încât pluginurile și temele care îl folosesc pot fi listate pe WordPress.org (un cadru non-GPL face ca pluginul să nu fie GPL).
  • GitHub: Cadrul trebuie să aibă un depozit public pe GitHub la care să putem conecta și să extragem statistici.
  • Respectați formatul: completați aceleași câmpuri ca și celelalte cadre din src/frameworks.
  • WordPress.org (opțional): dacă cadrul este deja listat ca plugin pe WordPress.org, vă rugăm să adăugați o referință la slug-ul pluginului.
  • Scurtă descriere: păstrați descrierea pentru pagina de prezentare generală scurtă și dulce.

Deci ce urmeaza?

Distribuiți proiectul IncludeWP

Acum este rândul tău să răspândești cuvântul în comunitate. Spuneți-vă prietenilor, distribuiți-l pe Twitter, vedeți proiectul pe GitHub... și reutilizați!