DIY WordPress Theme Framework Partea 1 Definirea nevoilor dumneavoastra

Unul dintre cele mai bune lucruri despre educația mea la Universitatea din Scranton a fost lecția recurentă despre care am aflat reutilizarea. Reutilizarea este incredibil de importantă în programare din mai multe motive: testarea mai ușoară, economisirea timpului, abilitatea de a vă concentra pe lucruri avansate etc. Odată ce am absolvit și am intrat în lumea minunată a freelancerilor cu normă întreagă, am decis dacă voi continua să fac WordPress de lucru, aș fi nevoie să le pun lecțiile de reutilizare în viața mea de zi cu zi. Numărul unu pe lista mea a fost un cadru tematic simplu WordPress.

Primul articol din această serie va fi puțin diferit de cele de pe acest site. În acest articol vreau să vă comunic câteva dintre lecțiile pe care le-am învățat despre reutilizare și definirea nevoilor dvs. Voi pune la dispoziție cadrul dvs. în următorul articol, dar este un fapt pe care toată lumea îl codifică în mod diferit și ceea ce vă furnizează ar putea să nu se potrivească cel mai bine nevoilor dvs.!


Unele principii de reutilizare a fi minte

Oricine are o educație formală în domeniul informaticii sau al ingineriei software poate atesta faptul că există nenumărate teorii, biblioteci și clase (clase de programare, nu clase de școală) dedicate unor forme foarte avansate de reutilizare și programare generică. În timp ce cred că acestea sunt exagerate pentru un cadru tematic, există câteva principii pe care am încercat să le urmăresc atunci când mi-am creat:

"Testarea va asigura funcționarea codului dvs. înainte de punerea lui în aplicare 5, 10 sau 20 de ori."

  • Design Codul tău: Știu când vorbim despre WordPress, design-ul implică, de obicei, designul front-end, dar este la fel de important să proiectăm codul. Stabiliți ce funcții, clase și pagini vor fi înainte de a începe să le codificați.
  • Generalizați când este posibil: Probabil cel mai important principiu este să recunoașteți când reutilizați fragmentele de cod și să le generalizați în funcții. Acest lucru va face mult mai ușor și mult mai ușor să gestionați și să actualizați codul.
  • Documentați și testați temeinic: Acesta este un lucru pe care ar trebui să-l faceți cu tot codul, dar în special codul pe care intenționați să îl refolosiți frecvent. Documentarea vă va ajuta să vă amintiți ce vă gândiți la 6 luni sau un an în jos. Testarea va asigura funcționarea codului dvs. înainte de punerea lui în aplicare 5, 10 sau 20 de ori.

Definiți nevoile dvs.

Acum, că am stabilit câteva lucruri pe care să le ținem cont, trebuie să definim ceea ce dorim ca cadrul nostru să realizeze. Amintiți-vă că fiecare dintre noi are propriile noastre nevoi și în timp ce voi vorbi despre a mea, a ta poate fi diferit. Nevoile mele au fost destul de simple la început: am vrut un cadru simplu care mi-a făcut munca inițială pentru mine.

În timp ce am creat teme WordPress pentru clienții mei, am observat că procesul meu a fost același: copiați K2 (tema implicită la acea dată), eliminați lucrurile pe care nu am vrut să le folosesc, înlocuiți-le cu codul meu. O mare parte din codul meu a fost similar: resetarea aceluiași CSS, aceeași structură CSS, același antet de stil, navigare etc. După un timp, am descoperit că era mai ușor să copiez tema ultimului client și să construiesc acest lucru. Atunci am decis să-mi construiesc propriul cadru.

"Trebuie să definim ceea ce dorim să realizăm cadrul nostru"

Cu asta am decis să-mi definească nevoile: ce făceam de mai multe ori și ce puteam generaliza. Lista mea de cerințe a fost astfel:

  • Plugin CSS: Există mai multe părți ale CSS-ului meu care se schimbă foarte rar. Aceasta include în definițiile clasei WordPress resetarea CSS, câteva clase generale pe care le folosesc (.hide, .left, .right, .clear, etc) și (de obicei) remedierile mele IE. Dacă aș putea să abstracționez totul, tot ce ar trebui să fac este să arunc într-un fișier CSS specific site-ului (numit master.css după cadrul CSS simplu al lui Dan Cederholm) și știu că orice altceva ar funcționa corect.
  • Constante pentru URL-ul temei și căile de imagine: Acestea sunt cele două variabile de care am nevoie cu fiecare temă. Dacă le-aș putea defini cu ușurință undeva, nu ar trebui să îmi fac griji pentru înlocuirea adreselor URL pentru fiecare site pe care îl creez.
  • Funcționalitatea comună a WordPress: Acestea sunt meniurile, definițiile bara laterală și orice altceva despre care aș putea să cred că scriu mereu.
  • Pagini cu șabloane general definite: Paginile tematice comune (antetul, footerul, indexul) cu suficienta pentru a le face utile, dar nu atat de mult pentru ele, incat trebuia sa schimb tema de fiecare data cand am dezvoltat o tema noua.
  • Foldere comune: Întotdeauna am un folder de imagini, un folder css și un folder css / img. A trebuit să le includ și pe acestea.
  • uşoare: Trebuie să fie ușoară. Nu vreau să trec prin pagini și pagini de cod pentru a găsi ceea ce vreau. Cu toate acestea, WordPress în sine este un cadru complex; de ce să construim un al doilea cadru complex în partea de sus?

De asemenea, am vrut să construiesc o funcție pentru caracteristicile mai multor pagini, cum ar fi pagina "mesajul nu a fost găsit" și pagina de navigare pentru mesaje. Acest lucru se întoarce la mentalitatea în care o singură funcție mă va ajuta să schimb mai rapid funcțiile pe mai multe pagini.


Vedeți ce este deja acolo

Cel mai bun lucru despre software-ul open source este că, dacă aveți nevoie de ceva, probabil că deja ați făcut-o. Același lucru se întâmplă și din cadrul Cadrelor. Există zeci de cadre acolo, așa că înainte de a vă descurca pentru a vă dezvolta propria dvs., ar fi cu siguranță merită să verificați ceea ce deja există. Scopul este să economisiți timp, nu? Nici o modalitate mai bună de a economisi timp decât de a nu trebui să se dezvolte deloc!


Tematica de ThemeShaper este un cadru foarte popular

Pentru a vă ajuta, am compilat o listă scurtă de cadre pe care le-am examinat cel puțin (deși majoritatea le-am folosit de fapt):

  • tematic
  • teză
  • Carrington
  • Geneză
  • Atahualpa
  • Din Codul WordPress

În timp ce explorați aceste cadre, țineți cont de cerințele dvs. Testați-le corect: descărcați, instalați, activați. Apoi, încercați să construiți o temă pentru copii și să jucați cu setările. Vedeți ce găsiți. Apoi, ia decizia ta.

Pentru mine, am simțit că cele pe care le-am încercat erau prea complexe și nu ușoare. Ele sunt minunate pentru persoanele care au nevoie rapid de o temă, dar, în ceea ce privește personalizarea, trebuie să învăț un nou sistem pentru a construi teme. Asa cum am spus mai devreme: stiu deja WordPress 'framework complex / API. Ar trebui să înlocuiesc acele cunoștințe cu cadrul / API-ul unei alte teme. Am decis să-mi construiesc propriul, care ar folosi în continuare funcțiile WordPress, nu să le înlocuiască.


Concluzie

Sunt sigur că ați putea ghici la începutul acestui articol că concluzia inevitabilă ar fi că vom construi cadrul propriu. Avem principiile și cerințele noastre și am făcut cercetările noastre. Suntem gata să construim un cadru, pe care îl vom face data viitoare!

Ultimul lucru pe care vă invit să-l faceți este să vă amintiți de ceea ce am spus aici: care sunt principiile și cerințele dumneavoastră. Folosești unul dintre cadrele pe care le-am menționat aici sau ai dezvoltat deja propria dvs.? Anunță-ne!

În următoarea sesiune din această serie, vom aplica aceste principii în prima zi de lucru pe noul nostru cadru!

Cod