Hjemmeside » WordPress » Begyndervejledning til WordPress Plugin Development

    Begyndervejledning til WordPress Plugin Development

    WordPress CMS har ændret ansigtet på vores internet og tillod en oversvømmelse af nye ideer til at trives, og dens open source-bevægelse har en stærk tilstedeværelse forankret i software og webudvikling. WordPress er en blogging platform, som har evnen til at starte i mange andre scripts som webfora, jobbrædder og endda et klassisk webside Content Management System.

    Vi vil gå over et par måder at komme i gang i plug-ins udvikling til WordPress. Trinnene er ret enkle og kræver ikke en stor dedikation til at studere. Rudimentære kendskab til PHP ville være nyttigt, selv med en grundlæggende forståelse af WordPress-filstrukturen og Administration panel.

    I denne korte vejledning skal vi gå over de grundlæggende trin, der kræves for at oprette en enkel WordPress-plugin. Funktionen vil blive brugt til at oprette dynamiske uddrag baseret på det nummer, der er overført til vores funktionsopkald. Du skal uploade plug-in-filen og aktivere fra administrationspanelet, og følg derefter op ved at kalde vores funktion fra de sider, vi ønsker at udsnittet skal vises. Links til den færdige plug-in kildekode er allerede tilføjet senere i denne artikel :)

    Hvorfor udvikle til WordPress?

    Plug-ins er en fantastisk måde at forbedre din blogs funktionalitet ved at tilføje ekstra funktioner. Disse kan placeres hvor som helst inde i din skabelon ved hjælp af funktionskroge. Over tid har udvidelsen af ​​WordPress 'plug-in-system tillagt en enorm vækst og hundredvis af udvikler-indsendte stykker software.

    WordPress tilbyder specifikt sådanne avancerede funktioner i sit CMS, at unikke plug-ins er få og langt imellem. Som udvikler har du fuldstændig kontrol over backend-specifikationerne for din weblog. Ansættelse af en PHP-udvikler til oprettelse af et system-plugin ville koste meget mere, end du måske forestiller dig, og API'en er ret let nok til at arbejde med og lære dig selv.

    Som et sekundært argument er udviklingen over WordPress en god praksis for at indstille dig selv ind i andre områder. At bygge mindre plugins og sidebar widgets i WordPress vil hjælpe dig med at udvikle en forståelse af, hvordan backend systemet virkelig virker. Dette er ikke kun begrænset til WordPress, da du får en dybere forståelse for det store flertal af indholdssystemer.

    1. WP Mappestruktur

    En introduktion til WordPress-mappestrukturen viser de grundlæggende app-mapper. Inside wp-indhold finder du en plugins vejviser. Her er hvor alle dine individuelle plug-ins vil blive indkvarteret, enten enkeltfiler eller korrekt navngivet underkataloger.

    For mindre plug-ins, som kun kræver en enkelt .php-fil, har du mulighed for at placere dette direkte i plug-ins / biblioteket. Men når du begynder at udvikle mere komplicerede applikationer, er det meget mere nyttigt at oprette en undermappe, der er opkaldt efter din plugin. Inde kan du huske JavaScript, CSS, og HTML indeholder sammen med dine PHP-funktioner.

    EN readme.txt fil kan også være nyttigt, hvis du planlægger at tilbyde dit plugin til download. Denne fil skal indeholde dit navn og hvad plugin'et gør. Som forfatter kan du også overveje at medtage detaljer om hver revision og hvilke opdateringer der er kommet ud.

    2. Start din PHP-fil

    Når du opretter et nyt plugin, skal du starte med en simpel PHP-fil. Dette kan navngives alt, men skal generelt afspejle dit plugins officielle navn. Så for eksempel har jeg oprettet vores base kode og har navngivet min fil hongkiat-excerpt.phps.

    De første linjer i din plugin skal være kommentaroplysninger til parsingsmotoren. Dette er yderst vigtigt, da WordPress ikke kan behandle din fil uden. Nedenfor er et eksempel kodestykke, du kan kopiere og skubbe til din egen.

     

    Pluginnavnet er, hvad der vises i dit Admin-backend-panel, når du går for at aktivere. Samme med URI'en, som vil blive placeret i detaljeringspanelet inde i plugin-panelet. Selv om det ikke er nødvendigt at medtage en version eller en beskrivelse, gør det dit plugin ser meget mere professionelt ud.

    3. WordPress Naming Conventions og Best Practices

    Der er et par måder at faktisk strukturere din plugin på. Mange gange vil PHP-udviklere oprette et helt klassesystem for at undgå sammenstød med funktioner og variable navne. Hvis du ikke er fortrolig med den avancerede OOP-funktionalitet i PHP, er det bedst at bare skrive din kode i prøvefunktioner.

    Så for vores eksempelkode vil vi skrive en enkelt funktion til at huse vores data. Vi skal også definere nogle få variabler, som er nøglen til at implementere i vores skabelonfiler. Nedenfor er et eksempel lidt kode taget fra vores plugin-fil, hvor kerne logikken er fjernet.

    Når du skriver din prøvekode, er det bedst at følge regler og vejledninger oprettet af WordPress. Da der er så mange interne funktioner, som allerede er defineret, kan du undgå dubletter ved at prefixe en etiket til alle dine variabler og funktionsnavne.

     

    I ovenstående eksempler prefixede vi alle vores indstillingsnavne med hongkiat. Dette kan erstattes med ethvert søgeord, du vælger, som regel relateret til dit pluginnavn. Ovenstående kode er bare prøveindstillinger og bør ikke vedrøre vores sidste plugin. Dette er kun for at give dig et indblik i, hvordan dine variabel navne og funktion opkald skal skrives.

    4. Dykning i filtre og handlinger

    Der er et andet koncept bemærkelsesværdigt at nævne, før vi hopper ind i vores rå kode. Handlinger og filtre er to helt forskellige begreber, der relaterer sig dybt til, hvordan de manipulerer plugin data.

    Disse to bits kode kommer standard i WordPress API. Filtre og handlinger giver mulighed for plug-in udviklere at opdatere bits kode i hele WordPress admin panel vedrørende din nye plug-in. Det betyder, at du kan tilføje en ny fane i sidelinjen eller flere indstillinger for dine indstillinger for plugin.

    Forstå add_filter ()

    EN filter bruges til lidt tekst eller data, der sendes til WordPress. Med filtre er du ret bogstaveligt i stand til filter indhold gennem dine egne brugerdefinerede skriftlige funktioner til at ændre data på nogen måde.

    For eksempel kan du oprette et filter, der skal ændres $ the_content som er et variabelt sæt af WordPress, der indeholder hele postindholdet i en WordPress-artikel. Til vores plug-in vil vi tage $ the_content og forkorte længden af ​​tegn i et uddrag.

    Filtre er nyttige, når du skriver plug-ins for at tilpasse udseendet og din blogs udseende. Disse er især populære, når du skriver sidebar widgets eller mindre funktioner for at ændre, hvordan et indlæg skal vises. Nedenfor er en prøvekode med kode, der viser, hvordan man anvender et filter.

    add_filter ('wp_title', 'hongkiat_func');

    Her tilføjer vi et filter ind i WordPress-sidetitel. Bemærk, at denne kode ikke vedrører vores officielle plugin og bruges kun som et eksempel her.

    Det add_filter funktion er indfødt til WordPress og bruges til at tilføje et nyt filter til en variabel, der findes inden for sidens indhold. I linjen ovenfor målretter vi mod $ wp_title som indeholder titlen på vores nuværende side. Vi sender så denne variabel til en falsk funktion med titlen hongkiat_func () som så kunne manipulere og returnere en ny titel tag til uanset formål.

    Forstå add_action ()

    Handlinger ligner filtre, fordi de ikke virker på data bits, men retter sig mod foruddefinerede områder i dine skabeloner og admin panel. Som et eksempel kan du anvende en handling, når du opdaterer eller redigerer en sides indhold. WordPress tilbyder en omfattende aktionsliste i deres API dokumentation. Nedenfor er en lille liste over eksempelhandlinger for dig at blive fortrolig med nogle af de foruddefinerede målområder.

    • publish_post - kaldes, når et indlæg offentliggøres eller når status ændres til “offentliggjort”
    • save_post - kaldes, når en post / side oprettes fra start eller opdatering
    • wp_head - kaldes, når skabelonen er indlæst og kører wp_head () fungere
    • loop_end - kaldes umiddelbart efter det sidste indlæg er blevet behandlet gennem WordPress-løkken
    • trackback_post - kaldes når en ny trackback tilføjes til et indlæg

    Igen kan vi se, hvor enkelt denne bit kode koger ned til. Hvis du kan forstå forskellen mellem handlinger og filtre, vil du være så tættere på at bygge omfattende, aktive WordPress-plugins. Nedenfor er en anden kodekode, der initialiserer en handlingfunktion på save_post krog. For at klarlægge igen gælder dette ikke for vores nuværende udviklingsprogram og bruges kun som et eksempeleksempel til at forstå ADD_ACTION () fungere.

    add_action ('save_post', 'notify');

    Så her ser vi et lignende setup til før sammen med add_filter (). Vi har brug for 2 variabler, den første hedder navnet på vores krog, vi målretter mod. I dette tilfælde save_post hvilket betyder, at hver gang et nyt indlæg er gemt, skal vi ringe til vores funktion defineret i anden position (underrette()). Du kan selvfølgelig opdatere underrette om at være uanset hvilket funktionsnavn du vil køre, men det er ikke nødvendigt for vores nuværende eksempel plugin.

    Afslutter vores plugin logik

    Afslutning på vores vej tilføjer vi vores endelige funktion lige ind i vores plug-in-fil. API dokumentationen er meget specifik og giver en fremragende ressource til udviklere, der kan holde avancerede spørgsmål. Materialet kan virke svært, hvis du ikke er bekendt med PHP, men tag dig tid med begreberne og ting vil begynde at flyde naturligt!

    Funktionen nedenfor skal tilføjes direkte efter din plugin's header kommentar. Alternativt kan dette også placeres inde i dit tema functions.php fil. Koden bruges til at oprette dynamisk postindhold baseret på et begrænset antal tegn.

    Så for vores eksempel kan vi begrænse historiens uddrag kun 55 tegn langt med hk_trim_content () fungere. Du kan nemt kalde denne kodekode fra en sidebar-widget eller en af ​​dine temafiler, der skal erstattes $ the_content.

    = $ grænse) array_pop ($ indhold); $ content = implode ("", $ content). '...';  ellers $ content = implode ("", $ indhold);  $ content = preg_replace ('/\[.+\]/', ', $ indhold); $ content = apply_filters (' the_content'- $ content); returner $ content;? 

    Det bør ikke forventes, at du fuldt ud forstår alle interne variabler eller funktioner, der bruges her. Bare at få en generel forståelse for, hvordan dine funktioner skal skrives, og hvad et eksempel sæt ville se ud er en meget god start.

    Du kan også bemærke, at vi bruger et opkald til apply_filters som er en anden WordPress-specifik funktion. Dette er et andet aspekt, du ikke behøver fuldt ud at forstå, men det hjælper med fremtidig programmering over WP. Se referenstilsøgningen apply_filters for flere detaljer og ofte stillede spørgsmål om emnet.

    Kernefunktionen ovenfor er navngivet hk_trim_content (). Dette kræver kun 1 parameter nævnt $ grænse. Dette kunne også forkortes $ lim som skal gemme et helt tal med angivelse af, hvor mange tegn der skal begrænses til dit uddrag. Indholdet bruges på hele indlægssider og også statiske sider (om os, kontakt).

    Derfor skal vi for at kunne kalde denne funktion tilføje parameteren i vores skabelonfiler. Dette ville blive placeret et sted muligvis i din index.php eller loop.php fil (er) og kræver at du installerer plugin'en først. Eksempel nedenfor:

    Installation og kørsel af plugin

    Jeg har oprettet en prøvefil til plugin til demo, hvis du vil springe over den hårde kodning. Du skal blot downloade denne fil (omdøbe den til .php) eller kopiere / indsætte koden i et nyt PHP-dokument og uploade dette til din / Wp-content / plugins vejviser.

    Når du er færdig, vil du få adgang til WordPress administrationspanel og gennemse dit nuværende sæt plugin-moduler til den justerede demo. Når du har aktiveret noget, sker der ikke noget, før vi manuelt tilføjer vores funktionsopkald. For at gøre dette skal du blot navigere Udseende -> Redaktør og kigge efter single.php.

    Denne fil indeholder alle skabelon HTML / CSS til din grundlæggende artikel efterside. Rul ned til du finder indholdet() og erstatt med eksempelkoden ovenfor. Dette vil begrænse alle dine artikel sider til 55 tegn, uanset hvilken visning der bruges. Du kan også tilføje i denne funktion til lignende sider i din skabelons mappe som f.eks search.php eller archive.php.

    Konklusion

    Disse er nogle af de grundlæggende for at komme i gang med at arbejde inden for WordPress-udvikling. Pluginsystemet er stort og indeholder en stor intern funktionalitet. Hvis du allerede har en ide til en plugin, prøv det på en lokal installation af WordPress til at øve disse emner.

    Hvis du stadig er forvirret af mange af oplysningerne, kan du gennemse WordPress-dokumentationen og søge efter dit svar der. Udviklingssamfundet er fuld af nyttige brugere, og foraene holder arkiver med spørgsmål fra år tilbage.