En av de viktigste komponentene i hver webapplikasjon er dens evne til å sende e-post.
Nå betyr dette ikke at hver webapplikasjon er sin egen e-postklient (selv om folk sikkert lager sine egne).
I stedet mener jeg at søknader normalt sende e-post når en bruker registrerer seg, en bruker endrer passordet sitt, når noe i systemet endres, eller - mer generelt - når noe skjer som området eiere ønsker å varsle brukerne.
Så langt i denne serien har vi dekket:
Den siste artikkelen var uten tvil en av de mest kompliserte som vi vil dekke; Det er imidlertid nødvendig for de som ønsker å legge til mer avansert funksjonalitet til prosjektene dine.
Med det sagt vil vi ta en pause fra noe av det mer kompliserte materialet og ta en titt og hva WordPress har å tilby så langt som å sende e-post er bekymret.
Før vi dykker inn i hva WordPress API tilbyr i veien for å sende e-post, tilpasse e-post og lignende, er det viktig å forstå et par ting om e-post.
Nemlig er det viktig å forstå komponentene som går inn i å skape en faktisk e-post - tross alt er det mer enn bare en adresse, emne og innhold.
Det er noen tekniske nyanser som er verdt å forstå før vi går om å bygge våre egne e-postadresser.
Kort sagt inneholder e-post overskrifter et minimumsopplysninger, inkludert: fra hvem e-posten blir sendt, og adressene som e-posten sendes til.
Vanligvis ser du sannsynligvis ytterligere informasjon i overskriften. For eksempel kan denne informasjonen inneholde et tidsstempel for når e-posten sendes.
Når det gjelder WordPress, er avsenderen spesifisert i e-post header alltid definert som standard avsender i WordPress, med mindre annet er angitt.
For eksempel, hvis du ønsker å sette svaradressen som "[email protected]", så er dette noe du må tilpasse.
I tillegg er det vanligvis en god ide å jobbe med e-postheader i form av en matrise slik at du enkelt kan konstruere, spesifisere og sende til adresser, karbonkopieringsadresser og blinde kopi-mottakere.
Når det gjelder formatet som e-postadresser følger, ser du sannsynligvis to skjemaer:
Du er vant til å se HTML i de fleste moderne e-postklienter; Men hvis du har en mer forenklet klient, har du det til bare å vise vanlig tekst, eller du leser e-post på en litt eldre telefon, så leser du innholdet i vanlig tekst.
WordPress gjør det mulig å sende e-postmeldinger i enten ren tekst eller HTML.
Når vi ser på et eksempel på hvordan du sender en e-postprogrammatisk, tar vi en titt på hvordan du gjør det. Kort sagt, det er en krok som gjør det veldig enkelt - men vi venter på å se det i aksjon til vi dekker resten av de nødvendige delene av en epost.
Vedlegg er praktisk talt en hvilken som helst fil du har knyttet til en e-post, og som du sender til en mottaker.
Saken er, det er noen regler for e-post - de er ikke nødvendigvis satt av programvaren, skjønt. I stedet begrenser servere, e-postklienter og andre forskjellige regler hva vi kan motta i innboksen vår.
For eksempel:
Uansett, det er utenfor vår kontroll - vi trenger bare å vite begrensningene til hvem vi sender e-post til og sørg for at vi blir innenfor dem.
For å oppnå dette, er det veldig enkelt å lage vedlegg til å sende med WordPress-e-post.
Selv om vedlegg er åpenbart ikke nødvendig, vil du kanskje legge til en enkelt fil eller til og med flere filer. I WordPress kan dette gjøres med enten en streng eller en matrise.
Vi vil ikke se nærmere på hvordan du gjør det akkurat nå, men vi vil Komme til det øyeblikkelig når vi ser på et eksempel på hvordan du programmatisk sender en e-post.
På det mest grunnleggende nivå består hver e-post av en "Til"e-postadresse, en"Emne", og en"Budskap".
I WordPress er disse veldig enkle å sette inn - bare gi strenge for hver og du er klar til å gå.
Selvfølgelig, hvis du vil sende en epost til flere personer, kan du enten iterere gjennom en samling adresser og sende en e-post per bruker, eller Du kan gi en rekke mottakere til WordPress Mail API, og den vil sende e-posten til alle de som er inkludert.
Og husk: Hvis du vil spesifisere en annen svare på
adresse, som går i overskriftene som vi dekket tidligere i artikkelen.
Så med alt det som er sagt, er vi klare til å ta en titt på WordPress Email API.
Kort sagt, all funksjonalitet er pakket inn i en funksjon som kalles wp_mail
; imidlertid der er noen få kroker som vi må være oppmerksomme på hvis vi ønsker å dra full nytte av søknadens tilbud.
Spesielt skal vi bruke følgende kroker:
wp_mail_content_type
lar oss definere MIME-typen av e-posten som sendeswp_mail_from
er et filter som vi kan bruke til å definere fra adressen, i stedet for å bruke $ overskrifter
matrisewp_mail_from_name
er et filter som vi kan bruke til å definere personens fra, i stedet for å bruke $ overskrifter
matrisewp_login
er kroken som vi skal bruke til demonstrasjon slik at vi sender e-post til en person når en person logger inn på WordPress dashboardFor fullstendighetens skyld deler jeg hele koden under og så går vi gjennom det.
'; $ message. = 'Din konto er opprettet. Innloggingsinformasjonen din er under: '; $ message. = '
'; $ message. = '
Hvis du har fulgt med denne artikkelen så langt, så ingenting av dette bør være veldig overraskende: Tross alt, vi drar nytte av de kroker som WordPress gir, vi bygger strenger å passere som funksjonsargumenter, og deretter vi ringer til wp_mail
funksjon.
Legg merke til at vi er sender en tom rekkefølge som $ overskrifter
argument for denne e-posten. Dette skyldes at vi bruker et egendefinert filter for å angi "Fra navn" og "Fra Adresse"bruker et filter og en hekta funksjon i stedet for en matrise.
Denne måten er ikke nødvendigvis bedre enn alternativet; Det er imidlertid ment å demonstrere at det er flere måter å oppnå det samme resultatet.
Så dette er enda en funksjon i WordPress som gjør det veldig enkelt å inkludere e-postfunksjonalitet i webapplikasjonen din.
Faktisk tror jeg at WordPress 'eventing-modell gjør det latterlig enkelt å introdusere e-postfunksjonalitet for omtrent alle scenarier som kan forestilles - hvis det er en krok tilgjengelig for det, kan en e-post sendes.
Med det sagt er det på tide å gjøre oppmerksomheten vår til et av de vanligste aspektene av webapplikasjonsutvikling: datahåndtering.
Spesielt må vi se på hvordan informasjon kan lagres i databasen og hentes fra dataene, og hvordan det kan gjøres så trygt og effektivt.
Så starter i neste artikkel, gjør vi akkurat det.