Tematica Cadrelor poate fi extrem de puternică. Pentru utilizatorii WordPress non-tehnici, ei fac posibilă crearea unui site unic, care pare să ruleze o temă personalizată, iar pentru dezvoltatorii WordPress vă pot ajuta să aplicați principiul DRY (Do not Repeat Yourself) și să vă dați posibilitatea construi rapid site-uri personalizate.
Dacă ați folosit un cadru terță parte pentru o perioadă de timp și ați devenit frustrați de codul umflat sau de lipsa de flexibilitate sau doriți doar să aveți control complet asupra codului dvs., atunci construirea propriului cadru tematic ar putea fi cea mai bună abordare.
În această serie, veți învăța cum să vă creați propriul cadru tematic WordPress pe care îl puteți utiliza pentru a construi site-uri pentru dvs. sau pentru clienții dvs. sau chiar pentru alți utilizatori. Veți lucra prin etapele implicate în crearea temei părinte care formează baza cadrului dvs., adăugând funcții suplimentare, cârlige și multe altele. Veți învăța, de asemenea, cum să le folosiți în temele și pluginurile pentru copii și cum să vă publicați codul.
Dar, înainte de a începe, trebuie să știți cum funcționează cadrele tematice și ceea ce le face diferite să fie o temă parentală standard.
Am petrecut timp dezvoltând două cadre tematice pentru a fi utilizate pe două categorii de site-uri ale clienților, dezvoltând și îmbunătățind-le în timp, și am lucrat și cu unele dintre cadrele tematice ale părților terțe. Din experiența mea, un cadru tematic are câteva caracteristici principale:
Primele două dintre punctele de mai sus sunt cele mai fundamentale - fără o temă părinte, nu aveți un cadru tematic. Și o temă părinte fără aceste cârlige și funcții este doar o temă de bază părinte, nu într-adevăr un cadru.
Deci, asta sunt cadrele tematice, dar cum funcționează? Să aruncăm o privire asupra elementelor unui cadru tematic:
Componenta principală a unui cadru tematic este tema părintelui. Acest lucru poate fi proiectat în unul din două moduri:
Fiind una dintre principalele caracteristici ale cadrelor tematice este principiul DRY, tema părinte este probabil să utilizeze părțile șablonului și să includă fișiere ori de câte ori este posibil, ceea ce înseamnă că puteți accesa același cod în mai multe locații din tema dvs. Acest lucru facilitează, de asemenea, suprascrierea codului în temele copilului dvs., deoarece creați pur și simplu o parte de șablon de înlocuire sau includeți un fișier.
Nu voi explica conceptul de temă părinte și copil aici, așa cum este acoperit de acest tutorial pe temele copilului. Multe cadre tematice vin cu o serie de teme pentru copii, pentru a le sprijini, în timp ce cu altele aveți nevoie să vă dezvoltați propria.
Dacă vă dezvoltați propria dvs., aș recomanda crearea a cel puțin o temă "starter" pentru copii, pentru a evita repetarea activității implicate în stabilirea unui proiect pentru fiecare proiect: puteți decide să creați mai multe teme pentru copii ca bază pentru diferite tipuri de proiecte , de exemplu teme pentru copii pentru bloguri și pentru site-uri care nu sunt pe blog.
Un cadru tematic va include o serie de cârlige pentru teme și plugin-uri pentru copii în care se adaugă un cod personalizat sau care modifică modul în care se comportă tema:
Merită să țineți ceva timp să luați în considerare ce cârlige doriți să includeți într-un stadiu incipient, astfel încât să știți ce conținut să includeți prin intermediul unui cârlig și ce să codificați direct în fișierele șablonului. Veți vedea acest lucru în următoarea parte a acestei serii.
Cadrul dvs. poate include, de asemenea, o serie de funcții. Unele dintre acestea se vor cupla în acțiunea și cârligele de filtrare pe care le-ați definit deja, în timp ce altele vor fi funcții precum etichetele de șablon pe care temele copilului le pot folosi.
Dacă aveți funcții personalizate pe care le utilizați pe un număr de site-uri client, merită să le adăugați în cadrul dvs. Nu trebuie să activați toate funcțiile: puteți activa o funcție din tema părinte utilizând o funcție ADD_ACTION ()
funcția în site-ul copilului.
Opțiunile pentru opțiunile tematice reprezintă un plus de utilitate pentru orice temă complexă, dar vor fi deosebit de utile pentru cadrele tematice concepute pentru utilizatorii non-tehnici. Principalele cadre tematice includ toate ecranele opțiunilor tematice din secțiunea de administrare proprie, cu opțiuni care includ activarea și dezactivarea funcțiilor de comutare, modificarea aspectului, adăugarea conținutului și modificarea elementelor de design precum culorile, imaginile de fundal, fonturile și imaginile de antet.
Puteți alege să utilizați instrumentul de personalizare a temelor pentru multe dintre opțiunile dvs., ceea ce are avantajul de a lăsa utilizatorilor să vadă modificările pe care le fac. Am luat această abordare pentru tema Edupress, pe care am dezvoltat-o pentru site-urile școlare cu Mark Wilkinson.
Indiferent dacă alegeți să adăugați o serie de zone widget va depinde de publicul pentru cadrul dvs.: dacă doar dvs. sau o mică echipă de dezvoltatori veți lucra cu tema, este posibil să nu adăugați zone widget peste bara laterală standard și subsol zone.
Dar dacă cadrul dvs. va fi utilizat de utilizatori non-tehnici, le puteți oferi o mai mare flexibilitate prin înregistrarea mai multor zone widget în diferite locații din tema dvs. Pe lângă bara laterală și subsolul normală, este posibil să înregistrați și zonele widget în antet, înainte și / sau după conținutul și sub subsol.
Cadrul tematic pe care îl folosesc pentru site-urile clientului meu include patru zone widget în subsolul paginii: tema verifică care dintre acestea sunt populate și adaugă clase CSS în mod corespunzător, astfel încât zonele widget populare vor ocupa fiecare lățimea corespunzătoare a paginii.
Zonele widget-urilor dvs. pot fi codate direct în fișierele șablonului dvs. sau puteți decide (ca mine) să le adăugați prin cârlige de acțiune în locurile relevante de pe site-ul dvs. Aceasta înseamnă că pot fi suprascrise în teme copil, fie prin zone de widget-uri alternative, fie prin cod personalizat.
Dacă un script dat este probabil să fie utilizat de un număr de site-uri construite pe cadrul dvs. sau dacă utilizatorii dvs. vor fi non-tehnici și doriți să oferiți opțiuni suplimentare, puteți decide să includeți anumite scripturi în cadrul dvs., cum ar fi slider sau script lightbox. Acest lucru poate salva utilizatorii care trebuie să instaleze pluginuri suplimentare, dar are dezavantajul de a bloat codul dacă aceste scripturi nu sunt necesare.
Din nou, acest lucru va depinde de publicul dvs. și de necesitățile sale anticipate: dacă lucrați doar cu cadrul, aș recomanda dezvoltarea (sau identificarea) pluginurilor cu aceste scripturi și utilizarea acestora atunci când aveți nevoie.
Dacă includeți scripturi, merită să includeți o opțiune de activare și dezactivare pe ecranul cu opțiuni tematice.
Dacă cadrul dvs. va fi util pentru o serie de site-uri acum și în viitor doriți să fie extensibil. Tema părinte care formează nucleul cadrului este doar inima unui ecosistem pe care îl folosiți voi și utilizatorii temei pentru a adăuga opțiuni suplimentare și putere site-urilor lor. Aceasta va include:
De asemenea, poate include și documentația pentru alți dezvoltatori care doresc să lucreze cu cadrul dvs.: majoritatea cadrelor tematice majore apar cu o documentație extensivă pe care dezvoltatorii o pot folosi fie pentru a personaliza site-urile lor construite pe cadru, fie pentru a crea teme sau plugin-uri pentru copii pentru alți utilizatori ai cadru pentru acces.
Cadrele tematice sunt un instrument puternic în arsenalul dezvoltatorului WordPress. După cum am văzut, ele sunt vitale pentru mii de proprietari de site-uri non-tehnice care le folosesc pentru a crea site-uri personalizate WordPress. Dar ele sunt, de asemenea, un instrument excelent pentru orice dezvoltator care va crea mai multe site-uri, fie pentru uz personal, fie pentru clienți.
Cadrele tematice au un număr de caracteristici care le dau acea putere: ele sunt extensibile și flexibile și fac mai ușor pentru dvs. sau utilizatorii dvs. să creeze site-uri personalizate utilizând temele copilului și să acceseze funcțiile și cârligele furnizate de cadrul dvs..
După ce ați analizat modul în care funcționează cadrul tematic, în următoarea parte a acestei serii veți identifica ce cadru trebuie să faceți și la cine trebuie să lucrați, ceea ce vă va ajuta să decideți asupra celei mai potrivite abordări de dezvoltare.