Visste du att du faktiskt kan orsaka döden genom att skriva ett WordPress-plugin? Det är sant: Om du gör ett plugin som är dåligt kodat nog för att orsaka ett säkerhetsproblem och säger att någon hackar webbplatsen för ett litet land med en diktatorisk regel, kan vissa huvuden rulla.
Även om det är en liten chans och inte rapporterats vara sant (ännu), är det faktiskt en giltig anledning att skriva bättre plugins. Och i den här delen av "Toolbox of the Smart WordPress Developer" -serien kommer vi att spara några liv genom att gå igenom WordPress Plugin Boilerplate.
Vad är det viktigaste supermakt av WordPress? Jag har frågat och svarat på denna fråga mer än ett par gånger i mina handledning, men du vet antagligen redan svaret: utvidgningsbarhet.
Ett sätt att utnyttja denna kraft är genom att göra WordPress-plugins och sätta dem i bruk för samhället. Du kan släppa ett plugin på GitHub, i WordPress Plugin Repository, på CodeCanyon eller på din egen webbplats. Du kan ge bort det gratis, eller be om pengar eller donationer.
Under alla omständigheter kommer du att utvidga funktionaliteten i WordPress på något sätt och på dina egna villkor. Du är en del av WordPress-community och du låter samhället växa genom att förlänga WordPress. Hur coolt är inte det? Detta är verkligen den främsta supermakten i WordPress, och du får använda den.
Men du måste också påminna dig själv med stor kraft kommer stort ansvar. Du måste använda denna kraft för gott och använda den bra. Genom att göra dåligt skrivna WordPress-plugins kan du orsaka några riktigt dåliga saker, särskilt när det gäller säkerhet. Det är därför du måste agera försiktigt och göra välkodade plugins med en solid grund.
Medan det inte löser alla dina kodproblem kommer WordPress Plugin Boilerplate att hjälpa dig att börja på rätt fot genom att tillhandahålla den "solida grunden" och vägleda dig för att koda bättre.
Tillbaka i december 2011 släppte Tom McFarlin, vår redaktör av Tuts + Code, den första versionen av WordPress Plugin Boilerplate. Under tre år har projektet blivit övervakat av över 250 personer, gafflar nästan 700 gånger och fick över 2 700 stjärnor på GitHub.
I mars 2015 meddelade Tom att Devin Vinson hade tagit över ägandet av WordPress Plugin Boilerplate-projektet. Från och med idag är projektets GitHub-arkiv värd för Devins konto.
På WordPress Plugin Boilerplate hemsida definieras projektet som "en standardiserad, organiserad, objektorienterad grund för att bygga högkvalitativa WordPress-plugins."
I grund och botten är WordPress Plugin Boilerplate ett av de bästa verktygen runt för att starta ett nytt WordPress-plugin med en solid grund. Det ger den väsentliga filen och mappstrukturen att hålla sig organiserad, och med hjälp av startkoderna i filerna kan du optimera ditt arbetsflöde och skriva pluginprogrammet. den rätta vägen.
Beviljas, detta verktyg är inte för WordPress nybörjare. Men du behöver inte heller vara en WordPress-guru: Även om du har en grundläggande förståelse för WordPress-plugin-utveckling, kommer WordPress Plugin Boilerplate att vara ett enkelt att förstå verktyg för att du ska kunna göra bättre WordPress-plugins.
Starta ett WordPress-pluginprojekt med WordPress Plugin Boilerplate är ganska enkelt, faktiskt. I början är allt du behöver göra för att ändra plugin-namn
mapp till ditt plugin namn och redigera alla filer (PHP, JS, CSS-filer och bilder) för att ändra "boilerplate values" till dina egna plugins värden.
Du märker att det finns en hel del filer att arbeta med, och många delar att redigera redan innan du skriver din egen kod. Låt inte detta släcka dig - det är ju bara en engångs sak, trots allt.
Låt oss snabbt gå över några av filerna och mapparna:
plugin-namn / admin /
: Innehåller CSS-filer, JS-filer, partials och PHP-filen för en admin-specifik klass (klass-plugin-namn-admin.php
).plugin-namn / includes /
: Den här mappen är typ av "ryggraden" i ditt plugin. Den består av:plugin-namn / includes / klass-plugin-name.php
: Den huvudsakliga PHP-klassen av din plugin.plugin-namn / includes / klass-plugin-namn-activator.php
: Inkluderar pluginaktiveringsfunktionerna.plugin-namn / includes / klass-plugin-namn-deactivator.php
: Inkluderar plugin-deaktiveringsfunktionerna.plugin-namn / includes / klass-plugin-namn-i18n.php
: Inkluderar internationaliseringsfunktionaliteten.plugin-namn / includes / klass-plugin-namn-loader.php
: Inkluderar åtgärder och filter för din plugin.plugin-namn / språk /
: Den här mappen innehåller dina plugins språkfiler. Inkluderar en standard plugin-name.pot
fil.plugin-namn / public /
: Innehåller CSS-filer, JS-filer, partials och PHP-filen för public-facing-funktionalitet (klass-plugin-namn-admin.php
).plugin-namn / license.txt
: En kopia av GPL-2-licensen.plugin-namn / plugin-name.php
: Den viktigaste pluginfilen.plugin-namn / README.txt
: En standard README-fil för din plugin. Glöm inte att ändra den här!plugin-namn / uninstall.php
: Filen ska köras när användaren tar bort plugin.Observera att mappstrukturen är baserad på systemet i WordPress.org Plugin Repository.
Snabbtips: Med hjälp av verktyget för WordPress Plugin Boilerplate Generator kan du skapa en anpassad kopia. Du anger ditt plugin namn, slug, webbplats och ditt namn, e-postadress och webbplats; då ersätter verktyget alla motsvarande värden i pannplattfilerna. Propert!
WordPress Plugin Boilerplate är säkert ett bra verktyg (även det bästa verktyget, kanske) för att skapa bättre WordPress-plugins. Men som jag sa i början av den här artikeln är det inte tillräckligt. Du måste vara uppmärksam på WordPress Coding Standards, följa programprocesserna och vara vaksamma om säkerhetsproblem i allmänhet. Och om du vill lära dig mer om att skriva bättre plugins, se till att du kolla in "Introduktion till WordPress Plugin Development" -kursus, också skapad av Tom McFarlin.
Vad tycker du om WordPress Plugin Boilerplate och gör plugins med det? Dela dina tankar med oss genom att skicka in i avsnittet Kommentarer nedan. Och om du gillade handledningen, var noga med att dela den med dina vänner!
Vi ses i nästa del där vi talar om Envato WordPress Toolkit, en verktygslåda för att installera och uppdatera teman som köpts från ThemeForest.