Når det gjelder å skrive en serie med blogginnlegg, er en av de mest utfordrende aspektene som leser faktisk å følge opp med hvert innlegg som er publisert.
Selv om du klarer å forsøke å fortsette, kan innlegg som overskrider 1000 ord - spesielt de som inneholder kode - ta tid som mange av oss ikke har spesielt når det gjelder å jonglere vårt arbeid, liv, hobbyer og andre ting.
For å sikre at informasjonen som presenteres gjennom denne serien fremdeles presenteres på en fordøyelig måte, trodde jeg at jeg ville eksperimentere med å lage et sammendrag av hele serien. På den måten, for de av dere som har gått glipp av en artikkel eller ikke har hatt tid til å sitte ned og gå gjennom hver artikkel, kan de fortsatt få tak i hvert punkt nevnt gjennom artiklene.
Med det sagt, la oss ta en titt på alt vi dekket da vi gjennomgikk WordPress Coding Standards.
Generelt sett har formålet med hele denne serien å bidra til å bringe lys til WordPress Coding Standards, slik at de som ikke har hørt om dem, de som ikke er oppmerksomme på dem, eller de som ikke har fulgt dem, er bedre rustet til å skrive WordPress-temaer, plugins og applikasjoner.
For å gjøre dette, tok vi et dypt dykk inn i en rekke forskjellige aspekter av kodningsstandardene i seks forskjellige artikler som fremhever prinsipper, beste praksis og ting å unngå.
Nedenfor har vi oppsummert hver enkelt artikkel, samt punktpunkene som er sentrale punkter og verdt å merke seg for emnet. Selvfølgelig, hvis du er igjen med å ha mer informasjon, kan du hoppe tilbake til artikkelen i serien (koblet på toppen av dette innlegget) for å lese det i sin helhet.
Når du jobber med klasser, funksjoner, variabler, attributter eller argumenter, bør navnekonvensjoner bidra til å utpeke formålet med at de tjener.
For eksempel er klasser vanligvis substantiver og funksjonsnavn er normalt verb. Til slutt handler det om å sørge for at koden er lesbar og vedlikeholdbar.
Straight from the Coding Standards:
Ikke forkort variable navn unødvendigvis; la koden være entydig og selvdokumenterende.
Men dette prinsippet er verdt å følge uansett av hvor i koden du arbeider.
Husk at når det gjelder å overføre funksjonsargumenter, er det viktig å huske at hvis et funksjonsnavn beskriver handlingen som det tar innenfor konteksten av klassen, bør argumentet representere hva funksjonen egentlig driver.
Foretrekk strengverdier til bare
ekte
ogfalsk
når du ringer funksjoner.
Dette betyr at funksjonsargumenter skal være klare verdier - strenger eller tall - som boolske verdier er ofte uklare og ikke nødvendigvis indikere hvilken handling funksjonen vil ta.
Når det gjelder å jobbe med strenge i WordPress, er det vanligvis et spørsmål om å jobbe i nyansene til PHPs strengmanipulasjon. Som sådan, i denne artikkelen, har vi vurdert hvordan PHP håndterer sitater (både enkelt og dobbelt) og hvordan det påvirker vår WordPress-utvikling.
Den enkleste måten å definere en streng i PHP er å pakke den inn med enkelt anførselstegn (det vil si "tegnet).
Som med de fleste programmeringsspråk, der er måter å unnslippe tegn på slik at du kan skrive ut en streng bokstavelig. For eksempel, hvis du ønsket å skrive: "String er i PHP er enkelt", som en streng, kan du gjøre dette:
'Strings \' s i PHP er enkle. '
Bakslagene vil instruere PHP til å skrive ut det enkle sitatet i stedet for å avslutte den faktiske strengen. Den andre tingen å merke seg er at hvis du har en variabel, vil det ikke erstattet når sitert i enkelt sitater.
Doble sitater virker litt annerledes innen PHP. Nærmere bestemt:
Hvis strengen er omsluttet i dobbelte sitater ("), vil PHP tolke flere fluktsekvenser for spesialtegn.
Dette betyr at hvis du legger inn en variabel i en dobbeltkrysset PHP-streng, blir variabelen tolket og verdien blir satt inn i stedet for variabelen før du viser den til skjermen.
Siden mye av arbeidet i WordPress inkluderer også å skrive ut markup innenfor en PHP-streng, er det best å plassere disse strengene i enkelt anførselstegn, slik at attributter av HTML-elementet kan være vedlagt i dobbelte anførselstegn.
Men det er tider hvor det er mer å foretrekke å bruke doble anførselstegn spesielt når du må vurdere en variabel.
De beste rådene som kan tilbys her, er å vite hvordan enkle anførselstegn og dobbeltsatte anførselstegn arbeider i PHP, og bruk dem på riktig måte basert på brukskassen din.
Husk: Hvit plass øker kodens lesbarhet og som utviklere bør en av våre primære mål være å sørge for at koden vi skriver, ikke bare følger en forhåndsdefinert standard, men også catering til andre utviklere for enkel lesbarhet og vedlikeholdbarhet.
Når det gjelder innrykk, er det ingenting helt nytt, spesielt hvis du er kjent med C-stil-språk. Mesteparten av tiden, vil du strekke inn hver gang du starter en ny blokk.
Legg merke til at kodingsstandardene gjøre har regler på faner og mellomrom:
Din innrykk skal alltid gjenspeile logisk struktur. Bruk ekte faner og ikke mellomrom, da dette gir mest fleksibilitet over klientene.
Dette er spesielt nyttig i open source-fellesskapet.
Rom bør plasseres på følgende steder:
||
, &&
, og !
)<
, >
, ==
, ===
, etc.)=
)Dette er en av de enkleste konvensjonene å følge. Ærlig talt er sjansene gode at din IDE eller redigeringsvalg har denne funksjonen innebygd, eller det er et plugin tilgjengelig som gjør at du automatisk kan gjøre dette.
Hvis ikke, bør du kunne aktivere evnen til å se faner, mellomrom, vognretur, og så videre slik at du enkelt kan identifisere hvor de bakre mellomrom er. Og når du ser dem, fjern dem.
I denne delen tok vi en titt på hvorfor stilen er viktig. Vi definerte også nøyaktig hvordan kodningsstandarder og konvensjoner definerer hvordan vi stiler vår kode.
Generelt sett er reglene enkle:
Disse er spesielt vanlige hvis du kommer fra andre C-stil språk; Men akkurat som WordPress har subtile nyanser som andre språk ikke gjør, er det verdt å markere dem her.
PHP tilbyr en rekke måter å jobbe med vanlige uttrykk, men WordPress anbefaler at vi bare bruker en håndfull av tilgjengelige funksjoner.
Reglene for å arbeide med vanlige uttrykk i PHP i WordPress er som følger:
preg
funksjoner som PHP tilbyr\ e
bytte som tilbys av PHP - bruk preg_replace_callback
i stedet.Spesielt anbefaler jeg å være kjent med følgende funksjoner:
preg_replace
preg_match
preg_match_all
Legg merke til at preg_replace_callback er en måte å ringe til en funksjon når et vanlig uttrykk har funnet en kamp.
Det er en veldig enkel tommelfingerregel for bruk av PHP-koder i WordPress-utvikling:
Dette betyr at du aldri skal åpne en fil eller en inline PHP-setning med eller med
=
. Naturligvis bør alle inline PHP-setninger avsluttes med ?>
avsluttende tag.
I tillegg til kodningsstandarden som er definert ovenfor, vil jeg også legge til:
Årsaken til dette ble omtalt i den tilhørende artikkelen:
Men hvis du skriver et plugin eller en applikasjonsfil som er 100% PHP, så er det ikke nødvendig å legge til en avslutende tag på slutten av filen. Parseren vil kunne oppdage det selv, og hvis du gjøre inkludere en terminerings kode, så kan du potensielt ha hvite plass igjen på slutten av filen som kan ringe alle slags problemer når det kommer tid for å aktivere plugin.
Når det gjelder å skrive WordPress-basert kode, sier kodningsstandardene at vi bør strebe etter lesbarhet:
Generelt er lesbarhet viktigere enn intelligens eller korthet.
Noen utviklere anser den ternære operatøren å være litt i strid med dette bestemte prinsippet, spesielt fordi det ennå er en annen måte å skrive en hvis / annet
uttalelse. Likevel, den ternære operatøren er et levedyktig alternativ når det gjelder å skrive enkle betingelser og er angitt i WordPress Coding Standards.
For det første, for de som ikke er kjent, er den ternære operatøren en forenklet måte å skrive en hvis / annet
betinget utsagn. Det brukes vanligvis bare når betinget er den enkleste form og bare når det er en singel hvis
og en singel ellers
blokkere.
$ uses_gasoline = 'hybrid' == $ car_type? usann sannhet; ekko $ uses_gasoline;
En viktig ting å merke seg: Den ternære operatøren tester for ekte (i stedet for falsk, åpenbart).
Yoda betingelser refererer til reversering av variabel til verdi sammenligninger som vi utfører når du skriver WordPress-kode. Vi dette, i henhold til kodningsstandardene, fordi:
I eksemplet ovenfor, hvis du utelater et likestilt skilt (innrøm det, skjer det selv til de mest erfarne av oss), får du en parse-feil, fordi du ikke kan tildele en konstant som
ekte
. Hvis utsagnet var omvendt($ the_force = true)
, Oppdraget ville være helt gyldig, tilbake1
, forårsaker at uttalelsen skal evalueres tilekte
, og du kan jage den feilen en stund.
Jo, det er diskutabelt, men det er En del av standarden og deg er kommer til å se dette brukt gjennom WordPress kjerne, temaer, plugins, artikler og mer.
Så kort sagt, hvis API-en faller mindre enn hva du trenger, da $ wpdb
kan være ditt beste alternativ, men jeg anbefaler bare å bruke den hvis du har brukt opp resten av alternativene dine.
I WordPress finnes det en rekke APIer som gjør det mulig for oss å lage egne forespørsler uten å måtte skrive SQL. Noen av disse APIene inkluderer:
WP_Query
WP_User_Query
get_post_meta
get_comment_meta
get_user_meta
Det er viktig å gjøre deg kjent med hva API-en tilbyr slik at du kan vite om det er en funksjon eller et objekt som er tilgjengelig for å bruke før, for å hoppe rett inn i å skrive dine egne søk.
APIer kan ikke forutsi alle tilfeller der vi trenger å skrive våre database spørringer. Og i disse situasjonene gir WordPress et objekt som gjør at vi kan direkte samhandle med databasen: $ wpdb
.
Det tillater oss å:
Å VELGE
variabler, rader, kolonner og generiske resultaterSETT INN
raderOPPDATER
eksisterende raderOg la oss hente dataene i et format som vi mest vil jobbe med: En matrise, en gjenstand eller en enkelt verdi (i noen tilfeller), og tillater oss å beskytte oss selv gjennom SQL-injeksjon.
Men husk:
Hvis du må røre databasen, ta kontakt med noen utviklere ved å sende en melding til wp-hackers mailinglisten. De vil kanskje vurdere å skape en funksjon for neste WordPress-versjon for å dekke funksjonaliteten du ønsket.
Som nevnt tidligere, kan det være vanskelig å følge med en serie artikler, spesielt de som involverer kode. Til det formål ønsket jeg å eksperimentere med å gi et sammendrag av serien som fortsatt gir nok informasjon til de som ikke har hatt mulighet til å følge med hele serien, men som fortsatt er interessert i de aktuelle emnene.
Så hvis denne bestemte strategien eller artikkelen er noe du liker, gi meg beskjed, og kanskje kan vi fortsette å gjøre det for andre serier; ellers ingen skade, ingen feil - jeg har det bra heller.
Uansett håper jeg at serien har bidratt til å forklare et antall forskjellige områder av WordPress Coding Standards som du enten har gått glipp av, misforstått eller ikke har fulgt helt til du har lest disse artiklene.