Eine der Hauptkomponenten jeder Webanwendung ist das Senden von E-Mails.
Das bedeutet nicht, dass jede Webanwendung ein eigener E-Mail-Client ist (obwohl die Benutzer sicherlich ihren eigenen erstellen)..
Ich meine damit, dass Anwendungen normalerweise E-Mails senden, wenn sich ein Benutzer anmeldet, ein Benutzer sein Kennwort ändert, wenn sich etwas im System ändert, oder - im Allgemeinen - immer dann, wenn etwas geschieht, für das die Websitebesitzer die Benutzer benachrichtigen möchten.
In dieser Serie haben wir bisher Folgendes behandelt:
Der letzte Artikel war wohl einer der kompliziertesten, den wir behandeln werden. Es ist jedoch für diejenigen von Ihnen erforderlich, die Ihren Projekten erweiterte Funktionen hinzufügen möchten.
Nachdem dies gesagt wurde, machen wir eine Pause von etwas komplizierterem Material und schauen uns an, was WordPress zu bieten hat, was das Senden von E-Mails angeht.
Bevor wir uns mit den Möglichkeiten der WordPress-API beim Senden von E-Mails, dem Anpassen von E-Mails und dergleichen beschäftigen, ist es wichtig, ein paar Dinge über E-Mail zu verstehen.
Es ist nämlich wichtig, die Komponenten zu verstehen, aus denen eine E-Mail tatsächlich erstellt wird - schließlich handelt es sich nicht nur um eine Adresse, einen Betreff und einen Inhalt.
Es gibt einige technische Nuancen, die es zu verstehen gilt, bevor wir unsere eigenen benutzerdefinierten E-Mails erstellen.
Kurz gesagt, enthalten E-Mail-Header ein Mindestmaß an Informationen, darunter: Von wem die E-Mail gesendet wird und die Adressen, an die die E-Mail gesendet wird.
In der Regel werden in der Kopfzeile zusätzliche Informationen angezeigt. Diese Informationen können beispielsweise einen Zeitstempel für das Senden der E-Mail enthalten.
Wenn es sich um WordPress handelt, wird der im E-Mail-Header angegebene Absender immer als Standardsender in WordPress definiert, sofern nicht anders angegeben.
Wenn Sie beispielsweise versuchen, die Antwortadresse als "[email protected]", dann müssen Sie dies anpassen.
Darüber hinaus empfiehlt es sich in der Regel, mit E-Mail-Headern in Form eines Arrays zu arbeiten, damit Sie Adressen, Carbon Copy-Adressen und blinde Carbon Copy-Empfänger problemlos erstellen, angeben und weiterleiten können.
Wenn es um das Format der E-Mails geht, werden Sie wahrscheinlich zwei Formulare sehen:
Sie sind es gewohnt, HTML in den meisten modernen E-Mail-Clients zu sehen. Wenn Sie jedoch einen einfacheren Client haben und nur Klartext anzeigen oder E-Mails auf einem etwas älteren Telefon lesen, lesen Sie den Inhalt in Klartext.
WordPress ermöglicht das Versenden von E-Mails entweder in Text oder HTML.
Wenn wir uns ein Beispiel für das programmgesteuerte Senden einer E-Mail ansehen, schauen wir uns genau an, wie das geht. Kurz gesagt, es gibt einen Haken, der es wirklich einfach macht - aber wir werden abwarten, bis er den Rest der notwendigen Teile einer E-Mail behandelt.
Wie Sie wissen, handelt es sich bei Anhängen praktisch um jede Datei, die Sie an eine E-Mail angehängt haben und die Sie an einen Empfänger senden.
Die Sache ist, es gibt einige Regeln für E-Mails - sie werden jedoch nicht notwendigerweise von der Software festgelegt. Stattdessen schränken Server, E-Mail-Clients und andere verschiedene Regeln ein, was wir in unserem Posteingang erhalten können.
Zum Beispiel:
Egal, das liegt außerhalb unserer Kontrolle - wir müssen nur die Einschränkungen kennen, an die wir E-Mails senden, und sicherstellen, dass wir in ihnen bleiben.
Daher ist das Erstellen von Anlagen zum Versenden mit WordPress-E-Mails sehr einfach.
Obwohl Anhänge offensichtlich nicht erforderlich sind, möchten Sie möglicherweise eine einzelne Datei oder sogar mehrere Dateien anhängen. In WordPress kann dies entweder mit einem String oder einem Array erfolgen.
Wir werden uns jetzt nicht genau ansehen, wie das geht, aber wir werden Wenn Sie sich ein Beispiel ansehen, wie Sie programmgesteuert eine E-Mail senden, sehen Sie kurz darauf.
Grundsätzlich besteht jede E-Mail aus einem "Zu"E-Mail-Adresse ein"Gegenstand", und ein "Botschaft".
In WordPress lassen sich diese Einstellungen auch ganz einfach festlegen. Stellen Sie einfach Strings bereit, und schon können Sie loslegen.
Wenn Sie eine E-Mail an mehrere Personen senden möchten, können Sie natürlich eine Ansammlung von Adressen durchlaufen und pro Benutzer eine E-Mail senden, oder Sie können der WordPress Mail API eine Reihe von Empfängern zur Verfügung stellen, und die E-Mail wird an alle Empfänger verschickt.
Und denken Sie daran: Wenn Sie etwas anderes angeben möchten Antwort an
Adresse, die in den Kopfzeilen steht, die wir zuvor in diesem Artikel behandelt haben.
Wir sind also bereit, einen Blick auf die WordPress-E-Mail-API zu werfen.
Kurz gesagt, alle Funktionen sind in einer aufgerufenen Funktion zusammengefasst wp_mail
; aber dort sind ein paar Haken, von denen wir wissen müssen, ob wir das Angebot der Anwendung voll ausnutzen möchten.
Im Einzelnen werden wir die folgenden Haken verwenden:
wp_mail_content_type
Damit können wir den MIME-Typ der gesendeten E-Mail definierenwp_mail_from
ist ein Filter, mit dem wir die Absenderadresse definieren können, anstatt die $ Kopfzeilen
Arraywp_mail_from_name
ist ein Filter, mit dem wir die Person definieren können, anstatt sie zu verwenden $ Kopfzeilen
Arraywp_login
Dies ist der Haken, den wir zur Demonstration verwenden werden. Wir senden E-Mails an eine Person, wenn sich eine Person im WordPress-Dashboard anmeldetDer Vollständigkeit halber teile ich den gesamten Code unten und dann gehen wir ihn durch.
'; $ message. = 'Ihr Konto wurde erstellt. Ihre Anmeldeinformationen finden Sie unten: '; $ message. = '
'; $ message. = '
Wenn Sie diesen Artikel bisher weiterverfolgt haben, sollte das alles nicht sonderlich überraschend sein: Schließlich nutzen wir die Hooks, die WordPress bietet, und bauen Strings auf, die als Funktionsargumente und dann weitergegeben werden wir nennen das wp_mail
Funktion.
Beachten Sie jedoch, dass wir sind ein leeres Array als übergeben $ Kopfzeilen
Argument für diese E-Mail. Dies liegt daran, dass wir einen benutzerdefinierten Filter verwenden, um die "Von Namen" und das "Von der Adresse"Verwendung eines Filters und einer Hook - Funktion anstelle eines Arrays.
Dieser Weg ist nicht unbedingt besser als die Alternative; Es soll jedoch zeigen, dass es mehrere Wege gibt, um dasselbe Ergebnis zu erzielen.
Dies ist eine weitere Funktion von WordPress, mit der es wirklich einfach ist, E-Mail-Funktionen in Ihre Webanwendung aufzunehmen.
Ich denke, das Eventing-Modell von WordPress macht die Einführung von E-Mail-Funktionen für nahezu jedes denkbare Szenario lächerlich. Wenn es einen Haken gibt, kann eine E-Mail gesendet werden.
Nachdem dies gesagt wurde, ist es an der Zeit, uns einem der häufigsten Aspekte der Entwicklung von Webanwendungen zu widmen: dem Datenmanagement.
Insbesondere müssen wir untersuchen, wie Informationen in der Datenbank gespeichert und aus den Daten abgerufen werden können und wie dies auf sichere und effiziente Weise geschehen kann.
Ab dem nächsten Artikel machen wir genau das.