Fișierul WordPress Functions.php explicat: Ghidul esențial

Publicat: 2020-11-18

Fișierul WordPress functions.php este unul dintre cele mai importante fișiere de operare ale WordPress. Există cel puțin două fișiere functions.php pentru fiecare site web WordPress: fișierul de funcții din nucleul WordPress și un fișier de funcții suplimentare în tema dvs. WordPress. În plus, o temă copil va avea, de asemenea, un fișier functions.php.

În acest ghid, vom acoperi ce este fișierul functions.php, unde se află fișierul WordPress functions.php, cum să îl editați și multe altele. De asemenea, vom oferi un manual despre funcțiile WordPress. Hai să ne scufundăm.

În acest ghid

    Dacă citiți acest articol, este posibil să aveți instalarea de bază WordPress funcțională sau să aveți deja un site web WordPress. Totul pare să funcționeze bine și atunci doriți să faceți ceea ce pare a fi doar un clic de buton. Apoi găsiți un tutorial online și se dovedește că trebuie să editați direct fișierul funcțiilor WordPress sau fișierul functions.php.

    Sau poate creați prima dvs. temă WordPress și aveți întrebări despre modul în care ar trebui editat fișierul cu funcții și cele mai bune practici pentru dezvoltarea temei WordPress. La sfârșitul acestui articol, ar trebui să cunoașteți mai bine modul în care funcționează fișierul WordPress functions.php și cum să îl utilizați cel mai bine.

    Ce este fișierul Functions.php în WordPress?

    Fișierul WordPress functions.php este un fișier de operare puternic care găzduiește funcții PHP importante care fac funcțional un site web WordPress.

    Există două locații principale ale unui fișier de funcții în WordPress:

    • Fișierul functions.php situat în directorul principal al site-ului dvs. web, care este inclus în fișierele de bază WordPress
    • Fișierele funcții.php situate în tema dvs. WordPress și / sau tema copil WordPress. Fiecare temă WordPress pe care ați instalat-o are fișierul său numit functions.php în rădăcina sa din cadrul instalării dvs. WordPress.

    Destul de similar cu modul în care funcționează pluginurile WordPress, fișierul functions.php există pur și simplu pentru a permite utilizatorilor să introducă coduri PHP personalizate pentru a executa pe pagini. Acest lucru poate fi folosit pentru nenumărate lucruri, de la funcționalități de bază adăugate, cum ar fi calcule de pe partea serverului, la elemente mai complexe, cum ar fi programe complete scrise în PHP pentru ca utilizatorii să profite.

    Notă: Există un fișier „functions.php” în fiecare temă pe care o aveți. Deși este suficient de ușor să schimbați tema blogului dvs. cu un singur clic prin WordPress, rețineți că acest lucru va modifica fișierul functions.php.

    Fișierul WordPress functions.php

    Dacă sunteți cineva căruia îi place să experimenteze diverse teme, rețineți că va trebui să migrați manual orice modificări funcționale.php pe care le-ați făcut. În plus, este posibil ca unele teme să nu accepte versiuni mai noi de PHP dacă nu au fost întreținute în mod activ, făcând inutile unele dintre funcțiile mai vechi.

    De aceea, chiar și după ce vă decideți să vă modificați tema, este important să efectuați formal QA sau pur și simplu să testați totul pe site-ul dvs. Nu luați mesajul WordPress că tranziția tematică a avut succes pentru a însemna că toate funcțiile dvs. au fost transferate. Acest lucru trebuie verificat manual.

    Unde se află fișierul cu funcții WordPress?

    Fiecare temă are propriul său fișier functions.php, care poate fi fie o binecuvântare, fie un blestem, în funcție de cât de des doriți să treceți temele și funcționalitatea site-urilor dvs.

    Cu toate acestea, există și un al doilea fișier de funcții „generale” despre care nu am discutat încă! Să aruncăm o privire la locațiile fiecăruia dintre aceste fișiere și care sunt exact diferențele dintre cele două fișiere.

    Fișierul WordPress Core Functions.php

    După cum sugerează și numele, fișierul de bază funtions.php WordPress este fișierul funcțiilor „head honcho”. Acest fișier de funcții vine la pachet cu software-ul de bază WordPress care oferă codul fundamental al unui site web WordPress.

    În directorul rădăcină al site-ului dvs. WordPress, veți găsi acest fișier de funcții situat în folderul sau directorul wp-includes . Odată ajuns în folderul wp-includes , veți găsi fișierul numit functions.php . Examinați , dar nu modificați, conținutul acestui fișier. Mai târziu, ar trebui să observați că structura este puțin diferită de cea a unui fișier de funcții al unei teme.

    Fișierul funcțiilor de bază WordPress

    Notă: la fel ca toate fișierele de bază WordPress, este înțelept să nu editați fișierul WordPress functions.php conținut în directorul rădăcină al site-ului dvs. web, indiferent de cât de enervant este transferul funcțiilor de la temă la temă. Acest fișier de funcții este destinat creatorilor de WordPress pentru a stoca funcționalități critice pentru misiune și dezvoltatorilor avansați de WordPress.

    De ce? Există câteva motive întemeiate pentru a nu edita niciodată fișierele de bază WordPress:

    • Ori de câte ori este lansată o nouă versiune de WordPress, actualizarea va suprascrie personalizările sau modificările pe care le-ați făcut fișierelor de bază WordPress. Rularea celei mai recente versiuni de WordPress este întotdeauna o idee bună din motive de securitate, deci nu doriți ca personalizările fișierelor să vă împiedice să rulați cea mai recentă versiune de WordPress.
    • Un spațiu într-un loc greșit sau un punct și virgulă suplimentar vă pot rupe complet site-ul WordPress. Dacă nu aveți o înțelegere aprofundată a dezvoltării avansate WordPress, fișierele de bază WordPress ar trebui să rămână neschimbate.

    Unde se află fișierul cu funcții în cadrul temei mele WordPress?

    Acum, să aruncăm o privire asupra fișierului functions.php specific temei dvs. Spre deosebire de fișierul core functions.php , acest fișier este destinat să fie editat de dvs., dezvoltatorul / webmasterul. Aceste fișiere sunt structurate și accesate în așa fel încât o eroare nu va fi de obicei de rupere a site-ului și va fi mult mai ușor de depanat decât o eroare în fișierul de bază.

    Pentru aceasta, va trebui să accesați folderul wp-content care conține temele dvs. WordPress. Selectați folderul principal al oricărei teme care vă interesează cel mai mult să adăugați funcționalitate.

    Fișierul tematică WordPress funcții.php

    În folderul rădăcină al temei dvs., ar trebui să vedeți un fișier functions.php . Deschideți acest fișier, dar nu modificați încă conținutul. Aruncați o privire la acest fișier și rețineți că are mai puțin conținut decât fișierul funcțiilor de bază.

    Exemplu de fișier WordPress Functions.php

    Pentru a vă oferi cea mai bună idee despre cum arată un fișier WordPress funcțional.php, oferim acest șablon „minimalist”. În esență, acesta are codul minim necesar pentru funcționarea WordPress. Cu toate acestea, nu veți vedea că face prea mult, deoarece funcțiile nu au fost încă completate!

    Fișierul cu funcții WordPress are funcții „obligatorii”, care vor fi discutate puțin mai târziu în articol. Fără alte convingeri, iată micul nostru fișier functions.php (bazat pe temă). Acest lucru este adaptat din exemplul oficial al funcțiilor temei WordPress, cu unele elemente secundare eliminate pentru claritate:

     if (! isset ($ content_width))
    $ content_width = 1000; / * tipul valorii implicite este în pixeli * /

    if (! function_exists ('myfirsttheme_setup')):
    / **
    * Această funcție este necesară pentru a înregistra totul ulterior în fișierul la acesta
    * funcțiile temei.php.
    * /
    function myfirsttheme_setup () {

    / **
    * Adăugați suport pentru imagini pe tema / site-ul dvs.
    * /
    add_theme_support ('post-miniaturi');


    / **
    * Activați asistența pentru toate lucrurile de bază WP
    * /
    add_theme_support ('post-formate', matrice ('deoparte', 'galerie', 'citat', 'imagine', 'video'));
    }
    endif;
    add_action ('after_setup_theme', 'myfirsttheme_setup');

    Și iată-l! Amintiți-vă că majoritatea temelor vor veni de fapt cu un fișier de funcții mai completat, la care puteți adăuga mai mult cod. Vă recomandăm să consultați întotdeauna manualul dezvoltatorului WordPress atunci când vă dezvoltați în acest fișier.

    Notă: Înainte de a edita fișierul functions.php al temei dvs., este imperativ să faceți o copie de rezervă a site-ului curent pentru a vă asigura că nu pierdeți niciun fel de date și muncă grea pe care le-ați pus în ele. O modalitate de a face acest lucru fără durere și durere de inimă este de a utiliza un simplu plugin de backup WordPress, cum ar fi BackupBuddy.

    Securitatea fișierelor WordPress Functions.php

    Atenție: Fișierul Functions.php este adesea vizat de hackeri, mai ales dacă aveți un cod personalizat care se leagă direct de baza de date WordPress (ceea ce, din motive de securitate, nu ar trebui să faceți).

    Înainte de a modifica oricare dintre aceste fișiere pe serverul de producție, asigurați-vă că utilizați un plugin decent de securitate WordPress, cum ar fi iThemes Security Pro, pentru a vă asigura că datele dvs. sunt sigure.

    Un plugin precum iThemes Security Pro poate adăuga detectarea modificărilor de fișiere pe site-ul dvs. web. Funcția de detectare a modificărilor de fișiere din iThemes Security Pro va scana fișierele site-ului dvs. web și vă va avertiza când apar modificări pe site-ul dvs. web, inclusiv:

    1. Adăugați fișiere - programele malware sub formă de programe spion pot adăuga un fișier rău intenționat care va înregistra tastele clientului dvs. pe măsură ce introduc informațiile cardului de credit.
    2. Eliminare fișiere - Unele programe malware vor elimina un fișier legitim și îl vor înlocui cu un fișier rău intenționat cu același nume.
    3. Modificare fișiere - Programele malware vor încerca să ascundă codul său rău intenționat ascunzându-l într-un fișier existent pe care îl modifică.
    Obțineți conținutul bonus: un ghid pentru securitatea WordPress
    Descărcați PDF-ul

    Cum ajung la fișierul Functions.php din WordPress?

    Pentru a accesa fișierele cu funcții, veți avea nevoie de câteva informații de bază pentru a efectua acest proces:

    • Acreditările dvs. sFTP (numai gazda dvs. le poate furniza și probabil le-a trimis într-un e-mail inițial)
    • Un client sFTP la alegere
    • Locația (fișierele) fișierelor pe care doriți să le accesați

    Odată ce ai acces la un client sFTP și te-ai conectat la server cu acreditările tale, poți răsfoi, vizualiza și edita fișierele site-ului tău WordPress (având în vedere că ai permisiunile de utilizator corecte).

    Consultați discuția noastră de mai sus atât despre fișierele „core”, cât și despre funcțiile bazate pe teme.

    Funcțiile temei WordPress explicate

    Deci, acum că ați simțit ceea ce ați putea realiza cu funcțiile temei WordPress, sunteți interesat de modul în care funcționează unele dintre aceste funcții.

    Deși ar trebui să accesați ghidul oficial de dezvoltare WordPress pentru a vedea o listă completă și actualizată a funcțiilor pe care le puteți utiliza, iată o listă convenabilă a funcțiilor tematice utile și a ceea ce face fiecare.

    themename_setup() - În această funcție, pur și simplu înlocuiți „themename” cu numele temei dvs. Acesta conține codul pentru configurarea temei dvs.

    register_nav_menus() - În această funcție, configurăm pur și simplu meniuri de navigare personalizate. Aproape fiecare temă reală (nu teoretică) profită de aceasta. În caz contrar, meniul fiecărui site WordPress ar arăta exact la fel!

    load_theme_textdomain() - Aceasta este funcția care permite localizarea. Un panaceu pentru SEO local pentru site-urile WordPress care au o acoperire largă, fie la nivel național, fie la nivel global, acest lucru permite optimizarea limbajului și SEO pentru regiunile și zonele locale.

    add_theme_support() - Probabil cea mai simplă funcție a grupului, aceasta spune doar temei dvs. să încarce module care acceptă diferite tipuri de suporturi media. Toate acestea sunt încorporate, deci nu este deloc o problemă. Multe lucruri diferite, de la fluxuri RSS la suport video, sunt aduse folosind această funcție.

    Și acolo aveți funcțiile majore ale temei WordPress! Cu toate acestea, suntem departe de a termina examinarea funcțiilor pe care le putem utiliza în WordPress. În continuare, vom arunca o privire asupra funcțiilor majore WordPress pe care le putem utiliza, care provin din nucleul WordPress, așa cum am discutat mai devreme.

    Top cinci Lista funcțiilor majore WordPress

    Mai departe, iată câteva funcții de bază majore WordPress pe care ar trebui cel puțin să le cunoașteți; cu toate acestea, chiar și majoritatea dezvoltatorilor de WordPress trebuie să se refere înapoi la Manualul tematic WordPress oficial înainte de a utiliza fiecare, mai ales datorită complexității parametrilor fiecărei funcții.

    Înainte de a începe, simțiți-vă liber să priviți toate funcțiile publice disponibile pentru a le utiliza chiar aici în referința codului WordPress.

    1. activate_plugins() - Această funcție se retrage din funcția activate_plugin() . Așa cum sugerează și numele său, este o comandă rapidă pentru a activa orice plugin instalat.
    2. add_menu_page() - Această funcție vă permite să adăugați foarte ușor și pur și simplu o pagină la tema sau meniul principal al site-ului. Mulți utilizatori începători încearcă să facă acest lucru folosind HTML brut și CSS. Din păcate, această abordare poate deranja o temă întreagă; este întotdeauna cel mai bine să profitați de funcții ca aceasta care sunt făcute doar în acest scop decât să încercați să „hack în jurul său”.
    3. bloginfo() - Dezvoltatorii PHP pot observa că acest lucru arată foarte asemănător cu o funcție obligatorie din cadrul PHP numită „phpinfo ()”. Acest lucru este menit să imite această funcție, oferind informații cruciale tipărite pe o pagină pentru utilizare de dezvoltare despre versiunea dvs. de WordPress, tipul de server și multe altele. Acest lucru este minunat dacă trebuie să obțineți rapid anumite informații specifice.
    4. current_user_can() - Această funcție este „booleană”, ceea ce înseamnă că va returna fie o valoare „adevărată”, fie o valoare „falsă”. Acest lucru este excelent pentru depanare și poate fi apelat pentru a vedea dacă puteți utiliza sau nu o anumită funcție. Folosind funcția în cauză ca parametru, puteți verifica dacă aveți permisiunile WordPress pentru a accesa orice funcționalitate specifică. Dacă nu, atunci puteți lucra la apucarea acestui lucru înainte de a continua și a accelera procesul de dezvoltare.
    5. delete_plugins() - Această funcție face literalmente ceea ce sugerează numele său: introduceți numele înregistrat al oricărui plugin și rularea acestei funcții va șterge pluginul și directoarele sale. Încă o dată, rețineți că această acțiune este permanentă și nu poate fi inversată. Asigurați-vă că aveți numele corect, că ați făcut backup pentru site-ul dvs. etc., înainte de a continua să executați această funcție.

    Funcții tematice WordPress obligatorii

    Așa cum am promis, ne întoarcem înapoi pentru a arunca o privire asupra acelor funcții tematice WordPress „obligatorii”. Acestea sunt funcții pe care trebuie să le aibă fiecare temă WordPress pentru a funcționa corect. Rețineți că, la fel ca în majoritatea formelor de programare, puteți crea pur și simplu un fișier cu aceste funcții necompletate, iar acest lucru ar fi considerat în continuare valid.

    Aceasta este o tactică pe care o folosesc multe bloguri pentru a face procesul să pară mult mai rapid decât este și pentru ca aceștia să vă ajute mai repede prin ceea ce ei numesc „elementele de bază ale WordPress”. Cu toate acestea, vă rugăm să vă amintiți că nu vă faceți niciun favor, nici dvs., nici site-urilor dvs., sărind peste aceste funcții necesare sau „obligatorii”. Vă asigurați pur și simplu că unele caracteristici care se bazează pe aceste funcții nu vor funcționa conform intenției. Este întotdeauna mai bine să vă creați site-ul corect pentru prima dată decât să aveți nevoie să vă întoarceți în mod continuu și să editați ceva doar pentru a menține totul abia ținut împreună!

    Pur și simplu consultați fișierul exemplu de configurare inițială a funcțiilor temei WordPress pentru a vedea toate funcțiile care sunt „obligatorii” pentru tema dvs. aflată în

    Editarea fișierului Functions.php

    Deci, acum că am parcurs elementele de bază ale fișierelor funcțiilor WordPress, să aruncăm o privire la modul în care ați putea edita acest fișier. Există diverse „bune practici” acolo, dar cel mai bun mod de a face acest lucru este destul de simplu.

    Mai întâi, va trebui să treceți prin același client SFTP folosind aceleași acreditări SFTP înainte. Apoi, va trebui să localizați și să descărcați pe unitatea dvs. locală fișierul PHP în sine. Folosind un editor (cum ar fi Notepad ++ open source) pe computerul dvs. local, editați mai întâi local.

    În mod ideal, ar trebui să aveți ceva instalat local care vă permite să testați acest fișier. Cu toate acestea, dacă nu faceți acest lucru, asigurați-vă că fișierul original este copiat și este pregătit pentru restaurare, în cazul în care modificările dvs. nu se deplasează așa cum vă așteptați. Apoi, înlocuiți acel fișier de pe server și urmăriți-l rulând!

    Întrucât cineva este pe cale să devină un dezvoltator experimentat de WordPress, trebuie să țineți cont de cele mai bune practici, recomandate chiar de echipa WordPress. Dacă adăugați funcționalități de natură semnificativă pe care doriți să le puteți reutiliza (analog cu un „obiect” în limbaj orientat obiect pentru programatorii de acolo), este o practică mai bună să creați un plugin complet cu acest PHP că puteți instala și dezinstala cu ușurință pe fiecare dintre site-urile dvs. Deși sună mai complex, de fapt vă va economisi timp de-a lungul anilor.

    Cum adaug cod la Functions.php?

    Dacă pur și simplu vă referiți la modificarea acestui fișier, aruncați o privire la răspunsul nostru de mai sus. Cu toate acestea, mulți utilizatori pun această întrebare, deoarece sunt interesați să adauge de fapt o funcție suplimentară proprie la fișier.

    Încă o dată, este considerată „cea mai bună practică” să rulezi caracteristici de acest gen într-un plug-in în loc să editezi la nesfârșit fișiere tematice. Indiferent, vom arunca o privire în următoarea subsecțiune cum să adăugați propriile funcții personalizate!

    Cum îmi injectez propria funcție personalizată în WordPress?

    Acum, a sosit în sfârșit momentul să vă injectați propriile funcții în WordPress! Aceasta este o piatră de hotar majoră pentru orice dezvoltator, astfel încât o mică sărbătoare poate fi în ordine. În primul rând, să ne scufundăm exact în cum să facem acest lucru.

    Deși este întotdeauna cel mai bine să adăugați codul personalizat la un plugin pe care îl lansați ulterior, cel puțin, nu editați funcțiile pe site-ul dvs. live decât dacă doriți un dezastru! Asigurați-vă întotdeauna că faceți o copie de rezervă completă a site-ului dvs. înainte de a edita fișierul funcției.php al temei.

    • 1. Profitați de un plugin gratuit pentru a adăuga funcții, cum ar fi „Funcțiile mele personalizate”, care vor fi utilizate pentru acest tutorial.
    Funcțiile mele personalizate

    2. După ce instalați pluginul, accesați „Aspect” și apoi accesați „Funcții personalizate” unde veți vedea funcțiile personalizate existente prin acest nou plugin.

    3. Puteți adăuga o funcție PHP foarte simplă la aceasta. De exemplu, derulați în jos până la partea de jos a casetei de introducere a textului și puteți imprima ceva „Bună ziua, lume!” cu următorul text:

     funcție hello_world () {
    ecou „Bună, lume!”;
    }

    4. Rețineți că acesta este pur și simplu PHP standard; nu există un „cadru WordPress” sau similar care ar modifica fundamental sintaxa, ceea ce este o veste excelentă pentru dezvoltatorii PHP existenți.

    5. Un ultim sfat rapid! În timp ce lucrați la actualizarea funcțiilor pe care tema și site-urile dvs. le au, există un fișier în wp-config.php . Aceasta se găsește în rădăcina temei dvs. și va trebui să o deschideți în editorul de text preferat prin clientul dvs. SFTP.

    Găsiți o linie care spune define('WP_DEBUG', false); . Pur și simplu schimbați-l pentru a spune define('WP_DEBUG', true); . Rețineți că va trebui să îl schimbați din nou la FALSE după ce ați terminat de dezvoltat.

    Cum folosesc Functions.php pentru a adăuga scripturi la anteturi și subsoluri?

    Scripturile pentru antet și subsol sunt adesea utilizate în scopuri publicitare și alte scopuri de urmărire. Este posibil să fie nevoie să fie inserate pe fiecare pagină sau doar pe anumite pagini vizate. Oricum ar fi, editarea directă a fișierului PHP nu este calea de urmat decât dacă sunteți un utilizator cu experiență WordPress.

    Încă o dată, va trebui să adăugăm un mic plugin înainte de a începe. De această dată, pluginul se numește plugin Insert Headers and Footers.

    Introduceți anteturi și subsoluri

    După ce adăugați acest lucru la temele sau site-urile dvs., veți putea accesa funcționalitatea de editare prin „Setări” și apoi „Inserați anteturi sau subsoluri”. Ar trebui să vedeți o casetă pentru scripturile Header și o casetă pentru scripturile Footer. Pentru a clarifica, acest plugin vă așteaptă să introduceți JavaScript și nu PHP, deci asigurați-vă că scripturile sunt în formatul corect înainte de a continua, deoarece acest plugin nu vă va oferi mesaje de eroare; orice ai pune în aceste cutii va fi pus pe paginile tale ca JavaScript!

    Va trebui să aveți scripturile pe care doriți să le adăugați gata să le lipiți direct în casete, apoi faceți clic pe „Salvați” și procesul este terminat! Unii utilizatori au raportat că aceste modificări nu sunt vizibile până când clienții își șterg cache-urile browserului și își șterg cache-ul serverului, deci este posibil să fie necesar să faceți acest lucru pentru ca modificările dvs. să aibă efectiv efect.

    Încheierea: un manual pentru fișierul WordPress Functions.php

    Vă mulțumim că v-ați acordat timp pentru a trece peste tutorialul nostru lung (dar, sperăm, demn!) Despre cum funcționează fișierul WordPress functions.php, diferența dintre versiunea de bază WordPress a fișierului funcții și versiunea tematică a fișierului. Sperăm că toate aceste informații, atunci când sunt asimilate în fluxul de lucru zilnic WordPress și în practicile de gestionare a site-urilor web, vă pot ajuta să vă transformați într-un dezvoltator WordPress chiar mai bun!

    Obțineți conținutul bonus: Lista de verificare finală pentru întreținerea WordPress
    Descărcați PDF-ul
    Fișierul WordPress functions.php