Cum să suprascrieți funcțiile temei părinte într-o temă copil

Publicat: 2022-11-01

Dacă creați o temă copil în WordPress, sunt șanse să doriți să înlocuiți unele dintre funcțiile din tema părinte. În acest articol, vă vom arăta cum să suprascrieți funcțiile temei părinte în tema copilului. În primul rând, trebuie să înțelegeți cum funcționează WordPress încarcă. Când o funcție este apelată, WordPress o caută mai întâi în tema copil. Dacă nu îl găsește, caută în tema părinte. Deci, dacă doriți să suprascrieți o funcție, trebuie doar să o creați în tema copilului. Să presupunem că doriți să suprascrieți funcția get_header() a temei părinte. Doar ai crea o funcție get_header() în fișierul functions.php al temei copilului tău. Noua funcție ar arăta astfel: function get_header() { // codul tău aici } Acum, când WordPress apelează funcția get_header(), va folosi noua ta funcție în loc de funcția temei părinte. Desigur, puteți modifica și funcții prin simpla copiere a acestora din tema părinte în tema copil. Cu toate acestea, nu recomandăm această abordare deoarece este ușor să uitați să actualizați funcțiile din tema copil atunci când tema părinte este actualizată. Este mai bine să utilizați abordarea override, astfel încât să puteți fi sigur că tema copilului dvs. folosește întotdeauna cea mai recentă versiune a funcțiilor temei părinte.

Acest articol vă va explica cum să suprascrieți funcțiile temei parentale ale WordPress. Puteți modifica ordinea în care funcțiile sunt declanșate utilizând una dintre cele trei metode sau puteți preveni deloc apariția lor. Când creați o temă părinte, este o idee bună să includeți pluginuri pentru funcțiile dvs., astfel încât acestea să poată fi modificate cu ușurință în temele secundare . Pentru a elimina funcții dintr-o temă părinte, utilizați metodele remove_action() și remove_filter(). În funcție de cârligul pe care îl utilizați, va fi determinat nivelul de prioritate al unei funcții. Dacă o funcție are o prioritate de 20, rescrierea unei teme copil cu prioritate 25 va face ca aceasta să se comporte diferit față de când a fost creată prima dată funcția. Prioritățile, pe de altă parte, nu au nicio legătură cu modul în care scrieți noua funcție; alege pur și simplu ce vrei să faci.

Tema Copilului WordPress Tema Copilului

Imagine de: https://gvtechnolab.in/how-to-create-child-theme-wordpress/

O temă copil WordPress este o temă care își moștenește funcționalitatea de la o altă temă, numită tema părinte. Temele secundare sunt adesea folosite atunci când doriți să faceți modificări unei teme existente, fără a pierde capacitatea de a actualiza tema părinte. Când o temă copil este activă, WordPress va căuta mai întâi fișiere șablon în directorul temei copil. Dacă un fișier șablon nu este găsit în directorul temei secundare, WordPress va căuta același fișier șablon în directorul temei părinte. Acest lucru vă permite să înlocuiți orice fișier șablon din tema părinte, fără a fi nevoie să editați direct fișierele temei părinte.

WordPress simplifică crearea de site-uri web cu cunoștințe minime de HTML, CSS și/sau PHP. Dezavantajul acestei metode este că odată ce tema a fost actualizată de către dezvoltator, orice modificări aduse acesteia se vor pierde. Utilizarea unei teme copil este o idee mult mai bună, deoarece vă permite să faceți modificări unui site web fără a fi nevoie să schimbați nimic din temă. Fișierele cu teme sunt editate sau modificate în funcție de faptul dacă tema copil este o temă nativă sau o temă modificată. Deoarece modifică doar părți ale temei părinte pe care le specificați, nu copiază totul. Pentru ca o temă copil să funcționeze corect, există trei lucruri care trebuie să fie prezente: un folder, o foaie de stil și un fișier functions.php. O temă copil ar trebui să includă propriul folder, foaie de stil și fișier functions.php.

Temele copil sunt situate în zona de conținut/teme WP a instalării WordPress, la fel ca orice altă temă. Ai nevoie doar de numele și șablonul temei. Este esențial să păstrez restul strict în scopuri de publicare, așa cum nu o fac. Dacă utilizați functions.php, puteți modifica și adăuga funcționalități și caracteristici unui site web WordPress. Crearea fișierului este la fel de simplă ca și crearea unei foi de stil. Dacă nu doriți să utilizați PHP pentru a modifica tema, o puteți face fără ea. Dacă aveți o temă părinte, ar trebui să fiți bine conștienți de cum ar trebui să arate site-ul dvs.

Dacă doriți să o faceți aici, trebuie mai întâi să obțineți informațiile din foaia de stil a temei părinte. CSS și regula @import sunt două moduri de a face acest lucru. Dacă totul merge bine, tema copilului tău ar trebui să arate exact ca cea pe care ai creat-o pentru el sau ea. Acum putem începe să personalizăm tema și să schimbăm lucrurile pentru a obține rezultatul dorit. Sunt disponibile o varietate de opțiuni pentru personalizări și le vom analiza în detaliu pe fiecare. Stilurile personalizate pot fi adăugate la o temă secundară care va avea aceeași ierarhie de stil ca și tema părinte. Metoda pe care o utilizați poate fi folosită pentru a face orice număr de modificări site-ului dvs.

Este întotdeauna o idee bună să păstrați structura de foldere a temei copil în aceeași ordine cu cea a temei părinte. Dacă un fișier numit page-templates din tema părinte conține un folder numit page-templates, puteți crea un folder care conține același nume în directorul temei dvs. Pur și simplu redenumim page.php din tema părinte în custom-full-width.php pentru a crea șablonul nostru personalizat de pagină. Primul exemplu este o funcție footer-custom.php care adaugă o clasă cu lățime completă elementului subsol, așa cum se arată mai jos. Acum trebuie doar să introducem codul în foaia de stil de mai jos. Aceasta este pagina noastră cu lățime completă. Chiar dacă a fost posibil să fi fost lustruit, ar trebui să fim mulțumiți de rezultat pentru moment.

Cârligele pentru teme vă permit să personalizați o temă copil fără a fi nevoie să editați fișierele de bază. Puteți adăuga imediat conținut la o temă, cum ar fi funcții, folosind un cârlig de temă. Cârligele vin în două soiuri: cârlige de acțiune și cârlige de filtrare. Funcționalitatea personalizată poate fi adăugată la o funcție existentă cu cârlige de acțiune, în timp ce funcționalitatea de filtrare poate modifica funcția disponibilă. Crearea unei teme copil în WordPress este simplă; este necesară o singură linie de cod pentru a face acest lucru. În acest caz, este vizată o funcție pentru creditarea subsolului în tema Twenty Fifteen. Dacă utilizați opțiunea functions.php , vă rugăm să vă asigurați că fișierul footer.php modificat din tema copilului dumneavoastră este, de asemenea, șters.

Cârligele în temele pentru copii pot extinde domeniul de aplicare al operei de artă a copilului dumneavoastră. Cu o temă copil, putem personaliza un site web complet și fără a modifica fișierele de bază. Drept urmare, dacă doriți să adăugați o temă sau un cadru, puteți face acest lucru fără a scrie una de la zero; modificările dvs. sunt protejate de actualizările temei; și, dacă ceva nu merge bine, veți avea întotdeauna o temă funcțională .

3 motive pentru a folosi o temă pentru copii

Există mai multe motive pentru care ați putea dori să utilizați o temă copil. Puteți adăuga mai multă personalizare unei teme existente. Dacă doriți să personalizați aspectul site-ului, puteți face acest lucru cu o temă care are deja o funcție de personalizare. Dacă nu aveți timpul sau cunoștințele necesare pentru a modifica codul original, puteți utiliza o temă. De cele mai multe ori, utilizarea unei teme pentru copii este cea mai convenabilă modalitate de a obține rezultatele dorite. Când utilizați o temă părinte bună , veți observa și înțelege modificările pe care le faceți. Unul dintre numeroasele avantaje ale folosirii unei teme pentru copil este că poți crea o temă specifică copilului tău, dar există câteva dezavantaje. Temele copil pot intra în conflict cu alte pluginuri, teme sau personalizare pe care le-ați creat. A doua problemă cu WordPress este că temele pentru copii nu funcționează cu versiuni mai vechi ale platformei. Toate temele copil nu sunt întotdeauna compatibile cu toate pluginurile WordPress. Beneficiile utilizării unei teme pentru copil depășesc cu mult dezavantajele utilizării unei teme părinte. Este posibil să doriți în continuare să utilizați o demonstrație sau să încercați o temă copil înainte de a o publica.

Cum să adăugați funcții PHP în tema copilului

Imagine de la: https://www.wpbeaverbuilder.com/redirect-wordpress-page/

În cazul nostru, php va trebui doar să creeze un fișier cu numele „funcții”, astfel încât să îl putem salva în folderul nostru cu tema copil. Pentru a salva etichetele php care se află în editorul dvs. de text, introduceți etichetele de deschidere și închidere PHP și salvați-l ca funcție. Ai si optiuni. Primul fișier de funcție va fi încărcat în folderul cu tema copilului după ce a fost încărcat.

În acest tutorial, vom învăța cum să adăugați funcții la o temă copil WordPress. În tema Twenty Twelve, vom oferi metainformațiilor postării un aspect diferit. Veți învăța cum să adăugați funcții temelor pentru copii în acest tutorial, ca parte a unei serii. Când ne uităm la fișierul functions.php inclus în Twenty Twelve, putem vedea că antetul său conține o linie foarte interesantă. Funcțiile conectabile sunt incluse într-un apel ca acesta. Funcția twentytwelve_nice_function (presupunând că ar exista) ar fi încărcată numai dacă nu ar exista în tema părinte. Pentru a crea un fișier gol, introduceți functions.php în folderul nostru cu tema copil.

În acest tutorial, vom modifica rezultatul implicit al temei Twenty Twelve. O nouă diviziune va fi creată pentru a gestiona funcția care generează șirul formatat pentru linia de metainformații post. Trebuie să avem regulile CSS ale div-ului child-custom-meta în vigoare până când îl creăm. Noul fișier functions.php și noul fișier style.html trebuie să fie încărcate în folderul cu teme secundare.

Cum să accesați fișierele din tema copilului dvs

Structura de foldere a temei copil vă permite să modificați anumite fișiere din temă. Pentru a începe, folderul temei copil trebuie să fie găsit pe site-ul dvs. După aceea, utilizați următoarea cale: br>a href=www.domeniul dvs..com/br>www.domeniul dvs. este pe site-uri/blog/teme/temă copil, de exemplu, tema părinte va fi pe site-uri/blog/teme/temă copil. Asigurați-vă că au fost făcute modificări la antet. Veți putea citi fișierul accesând, de exemplu, site-ul/blog/themes/child-theme/header. Dacă doriți să modificați întreaga temă părinte, mai degrabă decât anumite fișiere din tema secundară, puteți accesa fișierele temei părinte utilizând structura de foldere a temei părinte. Pentru a începe, asigurați-vă că aveți folderul temei părinte pe site-ul dvs. Următorul este următorul pas. www.sitename.com/ Dacă tema părinte se află la site-uri/blog/themes/default, de exemplu, fișierele temei părinte vor fi localizate acolo.