Att arbeta i WordPress-samhället är både en välsignelse och en förbannelse. På grund av sin open source-natur har vi en fantastisk plattform för att bygga webbplatser, teman, plugins och till och med applikationer. Det har en smart community kring det, rik dokumentation och standarder som syftar till att ge vägen att skriva kod för det och vägen att bygga verktyg kring det.
Samtidigt tillåter WordPress öppen källkod och de språk som den bygger till att någon ska skicka sitt arbete oavsett om det är upp till någon form av standard eller använder någon form av bästa praxis. För många användare är de ingen klokare om vad som händer under huven. Om produkten fungerar är de glada.
Som människor som är allvarliga om deras hantverk kan vi absolut inte bosätta sig för att "bara få det till jobbet." Vi ha att bry sig om vad som ligger under huven.
Om du är en seriös WordPress-utvecklare, har du troligtvis redan en metod för hur du jobbar, men om du bara har börjat eller letar efter att definiera dig själv som en professionell WordPress-utvecklare, finns det strategier, miljöer och verktyg som du kan använda som kan hjälpa till.
I denna tre artikelserie ska vi titta på exakt vad de är och hur de gäller i vårt projektarbete. Först börjar vi med strategier.
En väsentlig del av byggprogrammet upprätthåller faktiskt det efter den inledande lanseringen. Sanningen är att mer tid faktiskt spenderas i att behålla projekt än att bygga dem. Det är vettigt, eller hur? En produkt existerar långt längre än vad som krävs för att skapa den och, förutsatt att den är av hög kvalitet, kommer användarna att hitta fel och begära nya funktioner.
Tyvärr är en betydande mängd underhållstid spenderad på att få en bugglösning eller snabbt lägger till en ny funktion och görs ofta så på ett sätt som fokuseras mer på att bara få det gjort än att få det gjort rätt. Det här är inte helt fel heller - när en produkt är knuten direkt till ett företag, så är tiden en prioritet.
Men det finns saker som kan göras under den första utvecklingen som kan gå långt för att göra det enklare att behålla en produkt efter lanseringen.
WordPress Codex ger en omfattande guide för hur man bygger teman. Den täcker stilsortsguider, mallfiler, JavaScript-information, testriktlinjer, checklistor och olika referenser. Även om du arbetar med att bygga teman rekommenderar jag starkt att du granskar den här listan från tid till annan.
Förutom att följa basens uppsättning riktlinjer finns det ytterligare saker som kan göras för att förbättra underhållet. Om du antar att du följer Codex-riktlinjerna för att bygga teman, överväga följande när det gäller några av dina tillgångar och beroenden.
En av de saker jag gör för var och en av mina projekt är att se till att jag har specifika kataloger för tillgångar som ligger utanför de normala filerna som krävs för temat utveckling. Med detta menar jag att jag har specifika kataloger för:
Beviljas, varje tema kräver åtminstone ett enda stilark, men låt oss säga att du ska ge stilark specifikt för administrativ instrumentpanel. För underhåll är det bättre att hålla dem separata än i ett enda stilark och sedan låta ett verktyg kombinera dem innan de släpps.
Vi kommer att titta på verktyg för exakt detta i den slutliga artikeln i serien.
Oavsett var du landar på detta, kan det vara långt ifrån att ha en välorganiserad uppsättning medel.
När vi överväger hur vi bäst organiserar våra olika tillgångar kan namngivningskonventioner ge en tydlig klarhet och tillhandahålla en standard som alla relaterade filer ska följa. I varje av mina projekt gör jag vanligtvis följande:
Självklart finns det några universella JavaScript och stilark som tillämpas i hela temat. I det här fallet behåller jag helt enkelt en uppsättning admin.css och style.css filer.
De flesta WordPress-utvecklare vet att plugins ska vara temagnostisk. Det vill säga de borde inte vara beroende av en funktion i ett visst tema eller borde de införa någon av deras stylesheets eller JavaScripts på det befintliga temat förutom deras egna specifika egenskaper.
Dessutom finns det två sätt att utveckla plugins:
För det ändamålet finns det några strategier som kan användas när du skriver dina plugin för att se till att stylesheets, JavaScript, bilder och andra tillgångar inte stämmer överens med det befintliga temat.
När det gäller skrivpluggar gör de olika API-erna det lätt att mixa och matcha de språk du använder för att bygga ditt plugin. Därmed menar jag att det är helt möjligt att inkludera alla stilar, JavaScripts, HTML och PHP i en enda fil och skicka den sedan.
Men jag är inte en fan av detta.
Vanligtvis tjänar varje språk ett specifikt syfte, och därför försöker jag att hålla varje språk i sin egen fil så mycket som möjligt. Tänk på följande:
Som sådan tror jag att det är mer meningsfullt att hålla filerna separerade så att du vet var du ska fokusera när ett problem uppstår eller det är dags att införa en ny funktion.
Detta betyder inte att du inte ibland kommer att ha PHP skrivet i din markering eller att du inte dynamiskt skapar HTML-element på serverns sida, men det är meningen att du ska skapa en grund där du organiserar ditt arbete.
Förutom att du ser till att varje uppsättning stilark och JavaScript-filer är tydligt namngivna, tenderar jag att följa samma struktur som jag gör för teman och det vill säga namnet på den administrativa specifika koden prefixad med administration och tema eller offentligt specificerad kod med visa.
Det är en enkel strategi men det går långt i att optimera var du placerar dina filer och att behålla problem som de presenterar sig när ditt arbete är i det vilda.
Den punkt som täcker detta är inte att införa min sätt att organisera filer i ditt system eller ens säga att detta är ett vanligt sätt att göra det. Det är tänkt att ge en utgångspunkt för vilken du kan behålla dina projekt.
Slutligen är poängen att minimera underhållet så mycket som möjligt. Med tydligt definierade namnkonventioner och en organisationsstandard kan du exakt veta hur och var du ska placera dina filer utan att göra några gissningar och det gör att dina medarbetare och / eller lagmedlemmar kan veta var de ska fokusera för att spåra problem när de anländer.
En av de utmaningar som utvecklarna står inför är att se till att de är bekanta med rätt sätt att utnyttja plattformen som de arbetar på.
För det mesta innehåller varje språk, ram och bibliotek någon form av dokumentation och WordPress är inte annorlunda. Saken är, WordPress består av flera olika bitar - inte bara är programmet byggt med PHP, men det finns applikationsspecifika API-er, liksom bibliotek som jQuery som är nödvändiga för att ha som referenser.
Eftersom det tar mycket lång tid att bli väl bekant med insatserna i varje språk, applikation och bibliotek, har professionella WordPress-utvecklare vanligtvis referenser som är tillgängliga. För WordPress-utvecklare är följande referenser extremt värdefulla.
För det mesta, det är det - bokmärke dem eller få dem lätt tillgängliga i din IDE (om det stöder det), spendera tid i vart och ett av dem och du kommer att gå bra på väg till mer professionella utvecklingsmetoder.
Så långt som strategier går täcker detta det. Enkelt uttryckt, ha ett definierat sätt att organisera och namnge dina filer, se till att du följer de bästa metoderna i det centrala WordPress API och var noga med att hänvisa till de olika språk API-dokumenten när du bygger ditt arbete, och du kommer att vara i en mycket bättre position än att bara bygga ditt arbete ur manschetten.
.