Der persönliche Downloadcode muss zuverlässig beim Nutzer ankommen. Daraus könnte man ableiten, dass der Download Manager eine eigene SMTP-Seite mit Server, Port, Benutzername und Passwort benötigt. Für das CROPS-Projekt wurde bewusst die gegenteilige Entscheidung getroffen.
Das Plugin versendet über wp_mail() und nutzt damit die zentrale Mailkonfiguration der WordPress-Installation. Besteht bereits ein geeignetes Mail-Plugin oder eine serverseitige Zustellung, greift der Download Manager darauf zurück. Eine zweite parallele Konfiguration würde mehr Risiken als Nutzen schaffen.
Eine Website sollte nur eine Mail-Infrastruktur pflegen
WordPress versendet nicht nur Downloadcodes. Auch Kontaktformulare, Systemmeldungen, Passwort-E-Mails und andere Plugins benötigen den Mailweg. Werden für jedes Modul eigene SMTP-Daten hinterlegt, entstehen unterschiedliche Absender, Fehlerquellen und Wartungsstände.
Eine zentrale Konfiguration sorgt dafür, dass alle Anwendungen dieselben geprüften Einstellungen verwenden. Änderungen an Server, Kennwort oder Absender müssen nur an einer Stelle durchgeführt werden.
Weniger sensible Daten im Plugin
SMTP-Zugangsdaten gehören zu den besonders schützenswerten Informationen. Jede zusätzliche Speicherung erhöht die Angriffsfläche. Da der Download Manager diese Daten nicht selbst benötigt, soll er sie weder abfragen noch in eigenen Optionen ablegen.
Auch Supportberichte, Logs und Exporte bleiben dadurch frei von SMTP-Secrets. Das vereinfacht Sicherheitsprüfungen und reduziert die Gefahr versehentlicher Offenlegung.
wp_mail als klare Schnittstelle
Das Plugin übergibt Empfänger, Betreff und Inhalt an wp_mail(). Ob die Website anschließend über den lokalen Mailserver, einen SMTP-Dienst oder eine andere zentrale Lösung zustellt, bleibt Aufgabe der vorhandenen WordPress-Infrastruktur.
Diese Trennung entspricht der modularen Ausrichtung des Projekts. Der Download Manager kümmert sich um den Code und die Nachricht, nicht um die Administration des Mailservers.
Versand ausgelöst heißt nicht automatisch zugestellt
Ein erfolgreicher Rückgabewert von wp_mail() bestätigt, dass WordPress den Versandvorgang angenommen hat. Er ist noch kein endgültiger Zustellnachweis beim Empfänger. Deshalb sollten die Texte im Adminbereich keine hundertprozentige Zustellung versprechen.
Für die Fehleranalyse ist dennoch wichtig, ob wp_mail() einen Fehler meldet. Solche Ereignisse können protokolliert und dem Administrator verständlich angezeigt werden.
Mailvorlagen bleiben trotzdem flexibel
Der Verzicht auf eigenes SMTP bedeutet nicht, dass alle Nachrichten fest im Code stehen müssen. Betreff, Einleitung, Downloadlink und Hinweise können über editierbare Vorlagen verwaltet werden.
Platzhalter sorgen dafür, dass Produktname, Code, Gültigkeit und Laufzeit aus dem jeweiligen Datensatz eingesetzt werden. Dadurch bleiben Nachrichten konsistent, ohne sensible Infrastrukturwerte zu berühren.
Die Danke-Seite fängt Zustellprobleme ab
Da der Code zusätzlich auf der Danke-Seite angezeigt wird, hängt der unmittelbare Zugang nicht ausschließlich von der E-Mail ab. Der Nutzer kann den Code direkt kopieren und den Downloadbereich öffnen.
Die E-Mail bleibt wichtig als dauerhafte Sicherung. Die doppelte Ausgabe verbessert den Ablauf, ohne eine eigene Mailplattform zu erfordern.
Vorbereitung auf den Fall „Code vergessen“
Schon in dieser Entwicklungsphase wurde deutlich, dass Nutzer ihre Bestätigungsmail verlieren können. Ein geregelter Wiederherstellungsweg ist daher sinnvoller als eine immer komplexere Versandtechnik.
Die geplante Funktion soll anhand geeigneter Angaben vorhandene Zugänge finden und eine neue Nachricht über dieselbe WordPress-Mailinfrastruktur senden. Dadurch bleibt auch dieser Prozess innerhalb der zentralen Zuständigkeit.
Administratoren benötigen einen Mailtest, keine zweite Konfiguration
Ein einfacher Testversand kann prüfen, ob die Website grundsätzlich E-Mails aus dem Plugin auslöst. Schlägt er fehl, verweist die Hilfe auf die zentrale WordPress-Mailkonfiguration statt auf weitere Felder im Download Manager.
Diese klare Abgrenzung erleichtert die Fehlersuche. Es gibt nur einen Ort für Serverdaten und einen Ort für die inhaltlichen Vorlagen.
Schlankere Architektur, weniger Doppelarbeit
Der bewusste Verzicht auf eine eigene SMTP-Verwaltung ist ein Beispiel für die Grundidee des Projekts. Funktionen werden dort eingebaut, wo sie fachlich hingehören. Bereits vorhandene, geeignete WordPress-Infrastruktur wird nicht noch einmal nachgebaut.
Das Ergebnis ist ein kleinerer Wartungsumfang und eine verständlichere Administration. Der Download Manager konzentriert sich auf seine Kernaufgabe: aus einem bestätigten Vorgang einen nutzbaren und nachvollziehbaren Zugang zu machen.
Absender und Inhalt gehören zur zentralen Markenführung
Auch ohne eigene SMTP-Seite muss der Download Manager festlegen können, welche inhaltliche Vorlage für Code-Versand, Wiederherstellung und wichtige Statusnachrichten verwendet wird. Absendername und Absenderadresse sollten jedoch aus der zentralen WordPress-Konfiguration stammen, sofern keine bewusst geregelte Abweichung besteht.
Das hält die Kommunikation über verschiedene CROPS-Plugins hinweg konsistent. Gleichzeitig bleibt die technische Zustellung an einem Ort administrierbar.
Ein Testversand braucht ein klares Ergebnis
Die Adminoberfläche sollte Erfolg nur dann melden, wenn wp_mail() den Versand angenommen hat. Bei einem Fehler erscheint eine verständliche Meldung, während das technische Ereignis im geschützten Protokoll landet. Eine scheinbar positive Rückmeldung trotz fehlgeschlagenem Aufruf wäre besonders problematisch, weil der Nutzer seinen Code nicht erhält.
Der Test prüft den Weg aus dem Plugin heraus. Für die endgültige Zustellbarkeit bleiben Domainkonfiguration, Spamfilter und der zentrale Maildienst verantwortlich.
Vorlagenänderungen dürfen keine Codes verändern
Mailtexte sind Darstellung, nicht Berechtigung. Wird eine Vorlage angepasst, bleiben bestehende Codes, Laufzeiten und Produktzuordnungen unverändert. Diese Trennung verhindert, dass eine redaktionelle Änderung unbeabsichtigt in die Zugangslogik eingreift.
Platzhalter werden erst beim Versand mit den aktuellen Datensatzwerten gefüllt. So bleibt die Vorlage wiederverwendbar und die Nachricht dennoch individuell korrekt.

