Tilpasse WordPress-funksjonalitet Med functions.php

Så, her er vi på den åttende og siste avdrag av vår søken etter å komme under huden på et WordPress-nettsted. Jeg håper at du nå føler deg mye mer behagelig å leke med dine egne nettsteder. En av de store tingene jeg har funnet på WordPress, er det store volumet av ting du kan gjøre med det når du begynner å bli kjent med hvordan tingene passer sammen.

I dagens veiledning skal vi takle den siste mystiske filen i vårt tema som du ofte vil se nevnt rundt fellene; den du kanskje har klistret på kodestykker før uten å vite hvorfor eller hvorfor. I dag snakker vi med funksjonsmalen (functions.php).

For en grundig diskusjon om dette mystiske dokumentet, kan du ikke gå forbi det som er omtalt på Codex, men kort sagt, Funksjonsfilen er måten vi kan endre standardfunksjonaliteten på noen av våre nettsider på. Ved å bruke denne filen kan vi også utvide nettstedets funksjonalitet ytterligere. Det er ganske kraftig, og i dag skal vi gå gjennom bare noen få måter vi kan bruke den til å utvide vår testwebside.


Før vi begynner

Du vil trenge:

  • FTP-tilgang til nettstedet ditt
  • Din tekstredigeringsprogramvare
  • Et favicon-bilde 32x32px lagret i .ico-format, oppkalt favicon.ico

Hva skal vi gjøre

  • Legger til i Google Analytics-sporingskoden (du kan bruke et plugin for å gjøre dette, men vi bruker dette som et eksempel)
  • Addng i et favicon til nettstedet ditt

Før vi går videre, bør vi dekke litt om hvordan funksjonsfilen oppfører seg i sammenheng med ditt barntema. Det er litt annerledes enn de andre malene vi har jobbet med.

I et barn tema, i stedet for å erstatte funksjonaliteten til den tilsvarende filen i foreldetemaet som vi gjorde i vår siste opplæring, functions.php legger til eller utvider foreldrenes funksjonalitet. Det erstatter ikke det, som hvis du vil huske, er hvordan de andre malene oppfører sig i et barntema.

Så når vår side er påkalt, og serveren gjør sin magi med å trekke alle maler sammen, ser den etter funksjonene i barnetemaet, utfører dem, og ser til foreldrene og utfører også disse funksjonene.

For det andre er funksjonsfilen også en PHP-fil, og funksjoner vi laver / skriver vil inneholde PHP-kode, så vel som potensielt noen HTML. Så de hjelper oss med å hakke på vår geekkreds! (høy fives rundt!)

La oss komme inn på det.


Legger til Google Analytics-sporingskode

Jeg burde si fra begynnelsen at det ikke er noe galt med å legge til i analysekode ved hjelp av et plugin. Faktisk, de fleste plugins som tilbyr denne funksjonaliteten vil (i det vesentlige) ikke avvike veldig mye fra denne prosessen, de bare kaste koden ut av veien i en pluginfil. Når det er sagt, er det en nyttig og ikke for utfordrende illustrasjon for denne øvelsen. Så, la oss ta en titt.

1.Creating våre funksjoner fil

Trinn 1. Åpne FTP-klienten og naviger til din barn tema katalog.

Steg 2. I fillisten på den eksterne serveren, høyreklikk og velg Opprett ny fil.


Trinn 3. Skriv inn navnet på funksjonsfilen din som functions.php og treffer OK.


Trinn 4. Åpne den nye functions.php fil i tekstredigeringsprogrammet.

Trinn 5. På dette tidspunktet må vi sette opp filen slik at serveren vår registrerer den som en PHP-fil. Så legg til i et åpent PHP-tag, slik som dette , i begynnelsen av filen din.


Trinn 6. Nå er vi klare til å lime inn noen kode i vår functions.php.

Her er koden vi skal lim inn, og under det er en forklaring på hva vi ser på:

  

Ok, la oss slå det ned.

// Sette inn Google Analytics-kode til bunnteksten

På linje 1 har vi en setning som starter med to // merkene. Dette er en kommentar, som ikke gjør noe programmatisk, og er bare der for informasjonen til personen som redigerer filen. Formatering av det med skråstreker er en rask måte å kommentere ut a enkel linje av PHP-kode. Hvis vi kommenterer en hel blokk som krysser mer enn én linje, bruker vi det vanlige / * kommentere her * / merker vi også bruker i CSS. Det er god praksis å legge til kommentarer som notater når du kodes, slik at du kan holde tritt med hvor du er og hva du har gjort.

add_action ('wp_footer', 'mytheme_add_googleanalytics');

På linje 4 har vi litt litt komplisert leter kode som starter med ADD_ACTION.

ADD_ACTION er en PHP-funksjon som forbinder handlinger med steder i koden kalt kroker. Vi kan finne en hel del kodestykker rundt på nettet som er effektivt PHP-funksjoner for å legge til eller fjerne funksjonalitet til forskjellige kroker i vår kode. I dette tilfellet bruker vi dette legg til handling å legge til mytheme_add_google_analytics funksjon til wp_footer krok.

funksjon mytheme_add_googleanalytics () 

Linje 5 definerer og åpner faktisk mytheme_add_google_analytics funksjon:

og fra linje 7, som følger, er den tunge løftedelen som faktisk er der vi skal levere funksjonaliteten. For øyeblikket er dette bare en HTML-kommentar (<-- comment here -->), vil vi fikse det snart.

Til slutt, på linje 9 lukker vi funksjonen med de krøllete parentesene (legg merke til hvordan vi måtte gjenopprette stikkord. Dette skyldes at koden vi limer, er i virkeligheten HTML, slik at de to språkene fungerer i tandem, i stedet for å mashed sammen. Så måtte vi lukke PHP-taggen med ?> etter braketter på linje 5, lim deretter inn koden vår (vi gjør det i neste trinn) og åpner deretter PHP-taggen på linje 8 før vi skriver flere funksjoner til vår fil.

 

Trinn 7. Nå er det på tide å logge deg på Google Analytics-kontoen din og ta tak i din innebygde kode. Jeg venter her mens du gjør det ...

...

Trinn 8. Gå nå og lim inn det på linje 7 over toppen av HTML-kommentaren vår.


Trinn 9. Lagre filen din og last den opp til serveren din.

Du bør kunne kontrollere koden på siden din og se koden som sitter lykkelig der i bunnen av kildekoden din:



Legg til et favicon på nettstedet ditt

Du vet hva et favicon er, ikke sant? Hvis du trenger et oppfriskningshode til Codex for mer informasjon. Men kort sagt, det er det lille ikonet du ofte ser viser en logo eller et tilpasset bilde i fanene i nettleseren din, eller når en lenke til nettstedet ditt er lagret som et bokmerke.

Trinn 1. Lag din favicon.ico i din favoritt bilde redigering programvare.

Steg 2. Last opp faviconet ditt til temakatalogen (barnetemaet ditt) via FTP.

Trinn 3. Lim inn følgende kode i din functions.php fil:

// Legg til et favicon til nettstedet add_action ('wp_head', 'mytheme_add_favicon'); funksjon mytheme_add_favicon () echo ''; 

Trinn 4. Lagre filen og last den opp på serveren din.

Etter å ha beskrevet hva som skjer i en WordPress-funksjon tidligere, bør du finne det ganske greit å forstå hva som skjer i denne neste funksjonen. Først, la oss ta en titt på koden ...

For å starte, på linje 4 kan vi se at vi skaper en annen ADD_ACTION funksjon. Kroken vi legger vår kode på er wp_head (så, i motsetning til den forrige kroken legger vi dette til overskriften til nettstedet vårt, i stedet for bunnteksten) og navnet på vår funksjon er mytheme_add_favicon.

Et notat om navngivningsfunksjoner:

Du har kanskje lagt merke til at i begge disse tilfellene har jeg kalt funksjonene ved å begynne med vårt tilpassede tema navn mytheme_ og avslutter med en beskrivelse av hva vår funksjon gjør for eksempel. add_favicon. Årsaken bak dette er todelt:

  1. Det gjør det enkelt å se på et øyeblikk hva det er vår kode skal oppnå, og ...
  2. Det eliminerer risikoen for å bruke funksjonsnavn som allerede eksisterer i vårt overordnede tema, eller i WordPress selv, og dermed reduserer risikoen for våre temabrudd ting.

Uansett, forutsatt at du har en favicon.ico filen i temakatalogen din, må koden ovenfor fungere utenom boksen, men som en forklaring:

  1. På linje 8 forteller vi vårt tema å sette inn en streng med HTML i hode av vår nettside. Dette forteller nettleseren hvor du finner den favicon.ico.
  2. Den lille delen av PHP i den strengen (get_stylesheet_directory_uri () legger inn banen til vår fil i temakatalogen.

Forutsatt at all koden er riktig, og filen er i temakatalogen, vil nettleseren i tillegg vise dette ikonet for nettstedet vårt i hjørnet av våre faner, og andre slike steder blir et favicon vanligvis sett.


Du har kanskje lagt merke til at i dette eksemplet måtte vi ikke lukke og åpne den PHP koder som vi gjorde i trinn 7 og 8 i det forrige eksempelet. Dette skyldes at i dette andre eksempelet er koden vi har brukt, PHP fra ende til slutt, og mens den inneholder biter av HTML, er det ikke frittstående HTML fordi det er PHP-bygningsdel av URL-strengen. Når du blir kjent med funksjoner som dette, og som du lærer å bygge funksjoner selv, får du tydeligere forskjellen, men denne tanken tjener bare for å fortelle deg at koden er riktig, bare hvis du skulle legge til i og / eller ?> Tagger i dette eksempelet rundt de krøllete parentesene også!


Konklusjon

Når du begynner å få en forståelse av kraften til functions.php fil du vil være ustoppelig, det er måten å få alle slags ting gjort, og å legge til noen gode og kraftige funksjoner på nettstedet ditt. Så neste gang en opplæring du følger eller en utdrag du har funnet er nødvendig å bli lagt til din functions.php fil, bør du nå kunne trygt legge til og ta kontroll over alle områder av nettstedet ditt!

Huske! Før du lager nye endringer i filen, lagrer du en kopi til skrivebordet ditt for oppbevaring før du laster opp nye endringer. Får koden feil i functions.php kan forårsake problemer, så å ha en arbeidsversjon som er lagret på skrivebordet ditt betyr at hvis ting går galt, kan du bare laste opp sikkerhetsfilen din og starte på nytt.