Alt du behøver for at blive en Pro WordPress-udvikler
Vejen til at blive en dygtig udvikler er lang og praktisk uendelig. Nye rammer og webteknologier holder udviklere på deres tæer presset for at lære mere hvert år. WordPress er muligvis det mest populære PHP CMS, der nogensinde er lavet, og det har næsten 20% af alle selvstændige websites.
Hvis du er i PHP udvikling, er dette et system, der er værd at lære og mestre. Men hvordan går det med at gøre det?
I dette indlæg vil jeg skitsere de vigtigste områder af WordPress, som enhver udvikler skal forstå. Det kan være med til at skabe din egen struktureret WordPress læreplan hvor du studere specifikke områder i et par uger eller måneder ad gangen. Dette vil hjælpe bevare dit fokus og holde dig bevæger dig gennem WordPress i et breakneck-tempo.
Moderne WordPress Theming
Hvis du er helt ny til WordPress, så er det værd at lære om instrumentbrættet, før du kommer ind i det nitty-gritty.
Men jeg formoder, at alle, der læser dette, forstår allerede de grundlæggende stykker af at bruge WordPress, og vil virkelig bare forstå hvordan man skriver kode til at bygge oven på WordPress platformen.
Når det er sagt, tror jeg, at temaer er det bedste sted at starte. Ja plugins er gode, og brugerdefinerede funktioner er yderst nyttige. Men temaer er et krav til hver WordPress websted. Uanset om du kodes et nyt tema fra bunden eller tilpasser en eksisterende, vil du virkelig gerne være tryg med WordPress 'temasystem.
De eneste nødvendige filer til et tema er style.css stylesheet og main index.php. WordPress theming fungerer ved betingede filer så Hvis du ikke har en hjemmeside.php til hjemmesiden, vil WordPress defaults til index.php i stedet. Ligeledes hvis dit tema ikke har author.php for forfatter arkiv siden du bare kan bruge archive.php i stedet.
WordPress-tema er smart og nem at hente, når du lærer hierarkiet. Her er en liste over de minimale bare-bone-filer, som jeg mener, burde være i hvert WordPress-tema:
- style.css - temaets officielle stylesheet med tema info
- index.php - i sidste ende efterfølgende side for noget uden en unik temafil
- home.php - din blogs hjemmeside om statisk eller arkivindhold
- single.php - et enkelt indlæg / artikellayout
- page.php - et enkelt side layout
- archive.php - bruges som en catch-all for arkiver som kategorier, tags, forfattere og datoer
- 404.php - standard 404 fejl side layout
Bemærk, at avancerede temaer bør indeholde mere specifikke filer for at hjælpe med at definere bedre indhold og layout på side layout.
Hvis du vil vide mere, skal du tjekke listen over skabeloner i WordPress 'officielle dokumentation. WP tilbyder også et praktisk diagram, der forklarer, hvordan temafilhierarkier fungerer:
Hvert tema udvikles typisk som en selvstændig enhed, der kan tilbyde temaafhængige plugins og funktioner. Alle temaer er skrevet i PHP, så det er muligt at inkludere en temafil, der fungerer som et funktionsbibliotek, hvilket begrænser funktioner til et enkelt tema.
alternativt barn tema kan fungere godt til bygning ud over et eksisterende tema. Dette er et noget avanceret emne, og ikke alle kan lide ideen om børnetemaer, fordi de kan vokse meget kompliceret meget hurtigt.
Jeg synes det er mindst værd at forstå, hvordan de arbejder og selv bestemmer, om børns temaer passer ind i et bestemt projekt.
Grundlæggende pluginudvikling
De to største aspekter af WordPress udvikling er temaer og plugins. Da temaer påvirker webstedets layout og interface, bør det virkelig være dit første studieområde. Den naturlige opfølgning ville være delving i plugin udvikling.
Opbygning af et WordPress-plugin er svært, men let at lære, hvis du praktiserer. Der er nok materiale online, at det ikke bør betragtes som meget af en forhindring mere.
Det er værd at bemærke, at så mange gratis plugins er tilgængelige Det er muligt at opbygge WordPress-websites med gratis tredjeparts plugins uden nogensinde at skrive din egen. Men dygtige WordPress-udviklere skal i det mindste forstå, hvordan plugins fungerer, og hvordan man skriver en, hvis behovet opstår.
To meget vigtige termer du bør forstå er filtre og handlinger. De tager begge kode ind og sender / returnerer noget, men gør det på forskellige måder.
Filtre er beregnet til at returnere kode som en streng af HTML eller en ny opdateret variabel. Handlinger returnere (eller output) kode direkte i kroge, der er foruddefineret i WordPress-temaer, plugins eller endda af WordPress-kernen
Tjek denne Stack tråd for at lære mere.
Disse forskellige metoder har funktioner, der afspejler hinanden. For eksempel optræder add_action () og add_filter () på samme måde for handlinger og filtre. Dette gælder også for do_action () og apply_filters ().
Pluginudvikling kræver meget læsning og øvelse. Du bliver forvirret undervejs, men det er en del af læringskurven.
Jeg anbefaler stærkt denne Tuts + guide, der dækker grunde til handlinger og filtre. WP Engineer har også et godt indlæg på at definere dine egne kroge, som dybere dybere ind i processen med at opbygge fuldt fungerende temaer / plugins, som kan udvides med kode.
Udvikling af interne funktioner
WordPress tilbyder en håndfuld af alternative funktioner via interne klasser og API'er, der er tilgængelige for alle udviklere. Nogle er ret avancerede som omskrivnings API eller REST API, men nye udviklere bør overveje at begynde med flere grundlæggende funktioner:
Funktioner.php-fil
Alle har deres egen mening om functions.php fil. Personligt er jeg en stor fan. Denne fil gemmer temaspecifikke funktioner og indstillinger, som Definer, hvordan temaet fungerer via kortkoder, kroge og filtre.
Dit tema's funktionsfil kan endda have brugerdefinerede PHP-funktioner, som du ringer fra andre temafiler. Nogle udviklere føler, at dette er dårlig praksis, men Det er den bedste måde at organisere temaspecifikke funktioner i et bibliotek.
Tjek denne liste over gratis uddrag for at få en ide om, hvad der er muligt med et tema's funktioner.php-fil.
kortkoder
En shortcode er defineret i PHP, men kan tilføjes direkte til indhold. Disse er typisk betegnet med firkantede parenteser i WordPress post / side editor med noget lignende at opbygge et billedgalleri.
Tjek den kortkodedokumentation at se flere eksempler og lære, hvordan de fungerer.
Brugerdefinerede posttyper
Før WordPress 3.0 var der kun et par standardposttyper: vedhæftede filer, indlæg og sider. Disse er ofte mere end nok, og de fungerer godt for de fleste WordPress-websteder.
Men tilføjelsen af CPT'er tillod udviklere at oprette nye typer som nyhedsbreve, e-handelsprodukter og brugerindgivet indhold.
Disse brugerdefinerede posttyper kan også have deres egne brugerdefinerede taksonomier ud over standardkoder og -kategorier. CPT'er kan defineres via plugin eller i et temas funktioner.php. Der er meget fleksibilitet, når du lærer, hvordan disse fungerer, og hvordan man skriver dit eget.
Brugerdefinerede felter
Få udviklere forstår fuldt ud kraften i brugerdefinerede felter, indtil de begynder at bruge dem. Når du skriver et nyt indlæg i admin panelet, vil du bemærke forskellige widgets til at tilføje tags, kategorier, et fremhævet billede osv.
Brugerdefinerede felter kan defineres for at tilføje flere widgets på siden for ekstra indhold, kendt som meta-data. Den populære SEO-plugin Yoast gør dette ved at tilføje deres egne brugerdefinerede felter i post / side sektionen for at opdatere titel / meta indhold.
Det er muligt at tilføje et felt, der gemmer enhver form for metadata, om det er flere fremhævede billeder eller alternative forfatterbios. Funktionerne er ubegrænsede, når du lærer at opbygge brugerdefinerede felter og sætte informationen til god brug.
Avanceret WordPress Development & Beyond
Det indhold, jeg allerede har dækket, kan tage nogle år at mestre og fuldt ud anvende på deres arbejdsgang. WordPress er let at komme i gang, men svært at mestre.
Ud over begreberne tema / plugin udvikling kan du prøve inkorporering af specifikke WordPress API'er ind i din læring liste. Disse emner er virkelig for avancerede udviklere, der ønsker at forstå alt, hvad WordPress har at tilbyde.
Her er et par ideer til at komme i gang:
- Indstillinger API - definer brugerdefinerede indstillingssider og indtastningsfelter
- Options API - standardmetoden til lagring af databaseindhold
- Omskriv API - omskrive webadresser og lav dine egne tilpassede WordPress permalinks
- Transients API - til lagring af midlertidige data i en database cache
- WP_Query - en klasse til at skrive tilpassede database forespørgsler
- Walker - en klasse til styring af trædatastrukturer som sidehierarkier
Huske på, at læring er en proces, der aldrig stopper. For at blive en dygtig udvikler har du brug for konsekvent indsats og en passion for branchen.
Hvis du holder disse emner bogmærket og praktiserer jævnligt, garanterer jeg, at du vil lære meget og finde dig selv blandt rækken af mange andre professionelle WordPress-udviklere.