Professional WordPress Development Strategii

Lucrul în comunitatea WordPress este atât o binecuvântare, cât și un blestem. Datorită naturii sale sursă deschisă, avem o platformă fantastică pe care să construim site-uri, teme, pluginuri și chiar aplicații. Are o comunitate inteligentă în jurul acesteia, o documentație bogată și standarde care urmăresc să le ofere modul în care pentru a scrie codul pentru aceasta și modul în care pentru a construi instrumente în jurul acestuia.

În același timp, natura sursă deschisă a WordPress, precum și limbile cu care este construită permite fiecăruia să-și expedieze munca indiferent dacă este de până la orice tip de standard sau folosește orice fel de bună practică. Pentru mulți utilizatori, aceștia nu mai știu ce se întâmplă sub capotă. Dacă produsul funcționează, sunt fericiți.

Ca oameni care sunt seriosi in ceea ce priveste mestesugurile lor, nu putem absolut sa ne stabilim pentru "a ajunge la locul de munca". Noi avea să aibă grijă de ceea ce se află sub capotă.

Dacă sunteți un dezvoltator serios WordPress, probabil că aveți deja o metodă de lucru, dar dacă începeți sau doriți să vă definiți ca dezvoltator WordPress profesional, atunci există strategii, medii și instrumente pe care le puteți utiliza, care vă pot ajuta.

În cele trei serii de articole, vom examina exact ce sunt și cum se aplică în activitatea noastră de proiect. În primul rând, vom începe cu strategii.


Organizarea fișierelor

O parte semnificativă a software-ului de construcție îl menține de fapt după lansarea inițială. Adevărul este că mai mult timp este petrecut de fapt pentru menținerea proiectelor decât pentru construirea lor. Are sens, nu? Un produs există mult mai mult decât este necesar pentru a-l crea și, presupunând că este de înaltă calitate, utilizatorii vor găsi bug-uri și vor solicita noi caracteristici.

Din păcate, o cantitate semnificativă de timp de întreținere este cheltuită pentru a obține o soluție rezolvată sau pentru a adăuga rapid o caracteristică nouă și este adesea făcută într-un mod care se concentrează mai mult pe realizarea acesteia decât pe obținerea acesteia. Acest lucru nu este complet greșit fie - atunci când un produs este legat direct de linia de jos a unei întreprinderi, atunci timpul este o prioritate.

Dar există lucruri care pot fi realizate în timpul dezvoltării inițiale, care pot merge mult în ceea ce privește facilitarea menținerii unui produs după lansare.

Pentru Teme

Codul WordPress oferă un ghid cuprinzător pentru modul de construire a temelor. Acesta acoperă ghiduri de foi de stil, fișiere șablon, informații JavaScript, instrucțiuni de testare, liste de verificare și diverse referințe. Chiar dacă sunteți în afaceri de construire a temelor, recomand că vă recomandăm să revizuiți din când în când această listă.

În plus față de respectarea setului de linii de bază, există și alte lucruri care pot fi întreprinse pentru a îmbunătăți întreținerea. Presupunând că respectați regulamentul Codex pentru temele de construire, luați în considerare următoarele aspecte referitoare la unele dintre activele și dependențele dvs..

bunuri

Unul dintre lucrurile pe care le fac pentru fiecare dintre proiectele mele este să fiu sigur că am directoare specifice pentru active care sunt în afara fișierelor normale necesare dezvoltării temelor. Prin aceasta, vreau să spun că am directoare specifice pentru:

  • Imagini
  • stylesheets
  • JavaScript
  • Fișiere lingvistice
  • Biblioteci, cum ar fi coduri mai modulare, cum ar fi plugin-uri sau clase PHP
  • … si asa mai departe

Acordat, fiecare temă necesită cel puțin o singură foaie de stil, dar să spunem că veți oferi foi de stil special pentru tabloul de bord administrativ. Pentru întreținere, este mai bine să le păstrați separat decât într-o singură foaie de stil și apoi să permiteți unui instrument să le combine înainte de a le elibera.

Vom analiza exact acest lucru în ultimul articol din serie.

Indiferent de locul în care vă așezați în acest sens, a face un pic de planificare în față poate merge mult pentru a avea un set bine organizat de active.

Convențiile de denumire

Pe măsură ce ne gândim cum să organizăm cel mai bine diversele noastre active, convențiile de numire pot ajuta la asigurarea unui nivel de claritate și pot oferi un standard prin care să urmeze toate fișierele asociate. De exemplu, în fiecare dintre proiectele mele, de obicei, fac următoarele:

  • Imagini legate de un anumit șablon sunt prefixate cu numele șablonului, de exemplu: full-width.background.png
  • JavaScript
    • Pentru tabloul de bord administrativ, vor fi prefixate admin și va fi numit în funcție de pagina pe care sunt încărcate pentru: admin.edit-post.js, admin.users.js.
    • Pentru tema sau zonele cu care se confruntă publicul vor fi prefixate temă și numit pentru șablonul pe care sunt încărcate: theme.about.js.
  • stylesheets sunt numite ca JavaScript
    • Șabloanele de stiluri administrative sunt prefixate cu admin și denumite în funcție de pagina pe care au fost încărcate: admin.widgets.css
    • Foile de stiluri specifice temei sunt denumite în același mod prin faptul că sunt denumite pe baza șablonului pe care sunt încărcate: theme.about.css.

Desigur, există niște JavaScript și foi de stil universal care se aplică în întreaga temă. În acest caz, eu pur și simplu mențin un set de admin.css și style.css fișiere.

Pentru pluginuri

Cei mai mulți dezvoltatori WordPress știu că plugin-urile ar trebui să fie tematice-agnostic. Adică, ei nu ar trebui să depindă de o caracteristică a oricărei teme și nici să impună nici o temă a stilului sau a JavaScript-urilor pe tema existentă, cu excepția propriului lor caracteristic.

În plus, există două modalități de a dezvolta pluginuri:

  • API Plug-in
  • API-ul Widget

În acest scop, există câteva strategii care pot fi folosite atunci când scrieți pluginurile pentru a vă asigura că foile de stil, JavaScript, imagini și alte elemente nu intră în conflict cu tema existentă.

Nu amestecați și potriviți

Când vine vorba de scrierea plugin-urilor, diferitele API-uri ușurează de obicei amestecarea și potrivirea limbilor pe care le utilizați pentru a construi plugin-ul. Prin aceasta, vreau să spun că este complet posibil să includeți toate stilurile, JavaScript, HTML și PHP într-un singur fișier și apoi să îl expediați.

Dar nu sunt un fan al acestui lucru.

În mod obișnuit, fiecare limbă servește unui scop specific și din acest motiv încerc să păstrez cât mai mult posibil fiecare limbă în dosarul propriu. Gandeste-te la asta:

  • HTML este folosit pentru a descrie datele care sunt redate în browser
  • CSS este folosit pentru a modela sau a prezenta datele redate în browser
  • JavaScript este folosit pentru a gestiona evenimentele și a transmite informații către și de la browser și server
  • PHP este menit să ruleze pe server

Ca atare, cred că este mai logic să țineți fișierele separate pentru a ști unde să vă concentrați atunci când apare o problemă sau este timpul să introduceți o nouă caracteristică.

Acest lucru nu înseamnă că nu veți avea în mod ocazional scris PHP în marcajul dvs. sau că nu veți crea dinamic elemente HTML pe partea de server, dar este menit să ofere o fundație din care să vă organizați munca.

Separarea preocupărilor

În plus față de asigurarea că fiecare set de foi de stiluri și fișiere JavaScript este denumit în mod clar, am tendința să urmăresc aceeași structură pe care o fac pentru teme, și anume să denumesc codul administrativ specific prefixat cu admin și temă sau codul public specific cu afişa.

Este o strategie simplă, dar merge foarte mult în optimizarea locului în care plasați fișierele și în menținerea problemelor, deoarece acestea se prezintă odată ce lucrarea dvs. este în sălbăticie.

Un cuvânt final despre strategie

Punctul care acoperă acest lucru nu este acela de a impune mele mod de a organiza fișiere în sistemul dvs. sau chiar a spune că acesta este un mod standard de a face acest lucru. Acesta este menit să ofere un punct de plecare pentru care vă puteți menține proiectele.

În cele din urmă, scopul este de a minimiza întreținerea cât mai mult posibil. Având convenții clare de definire a denumirilor și un standard de organizare vă permite să știți exact cum și unde să plasați fișierele fără a face presupuneri și permite colaboratorilor dvs. și / sau membrilor echipei să știe unde să se concentreze pentru a urmări problemele în momentul în care ajung.


Documente de referinta

Una dintre provocările cu care se confruntă dezvoltatorii este să se asigure că sunt familiarizați cu modalitățile adecvate de a mobiliza platforma pe care lucrează.

În cea mai mare parte, fiecare limbă, cadru și bibliotecă include o formă de documentație și WordPress nu este diferită. Lucrul este că WordPress este alcătuit din mai multe piese diferite - nu numai că aplicația este construită folosind PHP, dar există aplicații API specifice, precum și biblioteci cum ar fi jQuery care sunt necesare pentru a avea ca referințe.

Deoarece durează foarte mult timp pentru a deveni familiarizați cu inelele și limbile din fiecare limbă, aplicație și bibliotecă, dezvoltatorii WordPress profesioniști au de obicei referințe disponibile. Pentru dezvoltatorii WordPress, următoarele referințe sunt extrem de valoroase.

  • PHP. Evident, limba în care este scris WordPress este valoroasă. Având manualul ușor accesibil pentru revizuirea funcțiilor și claselor este important mai ales dacă lucrați în afara API-ului WordPress standard.
  • Standarde de codificare. Una dintre cele mai mari probleme în dezvoltarea WordPress este faptul că dezvoltatorii de multe ori nu aplică standarde de codificare pentru munca lor (obișnuiau să fiu vinovat și de asta!). Urmând un standard, asigurăm că tot codul nostru va arăta la fel și astfel va fi mai ușor să contribuiți înapoi la comunitate, dacă dorim acest lucru. Dacă nu altceva, face codul curat.
  • WordPress API. Acest lucru ar trebui să fie un no-brainer, dar asigurați-vă că lucrați în mod corespunzător cu diverse obiecte WordPress este necesar pentru dezvoltarea profesională. Doar pentru că o puteți ocoli nu înseamnă că trebuie. Câștigurile sunt, dacă există o metodă de care aveți nevoie, este deja disponibilă ca parte a API-ului de bază.
  • jQuery API. jQuery este biblioteca JavaScript care este livrată cu WordPress și care este utilizată pentru funcționalitatea de bază, atât în ​​interiorul tabloului de bord, cât și în interiorul mai multor teme și pluginuri. Cel mai bine este să nu încercați să vă aduceți varianta proprie de JavaScript în mix, ci să vă lipiți de ceea ce este furnizat.

În cea mai mare parte, asta-i - marchează-le sau le puneți la dispoziție în IDE-ul dvs. (dacă îl suportă), petreceți timp în fiecare dintre ele și veți fi pe drum spre mai multe practici de dezvoltare profesională.

În ceea ce privește strategiile, acest lucru o acoperă. Pur și simplu puneți-vă un mod definit de organizare și denumire a fișierelor, asigurați-vă că urmați cele mai bune practici ale API-ului WordPress core și asigurați-vă că vă referiți la diferitele documente API de limbă atunci când vă construiți munca și veți fi o poziție mult mai bună decât pur și simplu să vă construiți munca de pe manșetă.

.

Cod