Anmeldeformular auf der eigenen Website
HTML-Formular für die Newsletter-Anmeldung auf Ihrer Website einbauen: Double-Opt-in, Schutz vor Robotern, erlaubte Websites und die Antwort als JSON.
Das Formular
Jeder Newsletter hat eine öffentliche Archivseite mit Anmeldung (/p/ihr-kuerzel). Zusätzlich können Sie das Formular auf Ihrer eigenen Website einbauen. Den Code mit Ihrem Kürzel finden Sie im Dashboard unter «Einstellungen» → «Anmeldung und Tracking». Er sieht so aus:
<form action="https://zugestellt.ch/api/anmelden" method="post">
<input type="hidden" name="newsletter" value="ihr-kuerzel">
<label>E-Mail <input type="email" name="email" required></label>
<label>Vorname <input type="text" name="vorname"></label>
<!-- Fängt Roboter ab. Nicht entfernen, nicht ausfüllen. -->
<input type="text" name="website" tabindex="-1" autocomplete="off"
style="position:absolute;left:-9999px" aria-hidden="true">
<button type="submit">Anmelden</button>
</form>Gestalten Sie Formular und Knopf frei mit dem CSS Ihrer Website. Wichtig sind nur die Feldnamen newsletter, email, vorname und website.
Das unsichtbare Feld
Das Feld website sehen Menschen nicht. Roboter füllen es aus — dann zeigt zugestellt zwar eine Erfolgsseite, trägt aber nichts ein. Lassen Sie das Feld stehen und leer.
Was nach dem Absenden passiert
- Mit Double-Opt-in erhält die Person sofort eine Bestätigungsmail. Erst nach dem Klick auf «Bestätigen» ist sie Leserin. Der Link gilt 30 Tage.
- Ohne Double-Opt-in ist sie sofort angemeldet und erhält die Willkommensmail, falls Sie eine eingerichtet haben.
- Die Person landet auf Ihrer Archivseite mit einer Meldung, was als Nächstes geschieht.
- Ob eine Adresse neu, schon angemeldet oder gesperrt ist, sieht man von aussen nicht. So lässt sich nicht abfragen, wer auf Ihrer Liste steht.
Erlaubte Websites
Unter «Erlaubte Websites» tragen Sie ein, von welchen Websites Anmeldungen kommen dürfen, eine pro Zeile und ohne Pfad, zum Beispiel https://www.ihre-firma.ch. Ist die Liste leer, nimmt zugestellt Anmeldungen von überall an. Die eigene Archivseite ist immer erlaubt.
zugestellt erkennt die Website am Origin-Header des Browsers. Wer vom eigenen Server aus anmeldet, sendet keinen solchen Header — bei gefüllter Liste wird die Anmeldung dann abgelehnt. Für Server nehmen Sie besser die REST-API.
Grenzen gegen Missbrauch
- Höchstens 5 Anmeldungen pro IP-Adresse in 10 Minuten.
- Höchstens 3 Bestätigungsmails pro Adresse, nicht zweimal innert 10 Minuten.
- Kommen mehr als 300 Anmeldungen in 10 Minuten auf einen Newsletter, meldet zugestellt das. Gesperrt wird dabei nichts.
- Tippfehler bei grossen Anbietern (etwa «gmial.com») und Wegwerf-Adressen werden abgelehnt.
Mit JavaScript statt Seitenwechsel
Schickt Ihre Website die Anmeldung als JSON, antwortet zugestellt ebenfalls mit JSON, statt weiterzuleiten:
const r = await fetch('https://zugestellt.ch/api/anmelden', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ newsletter: 'ihr-kuerzel', email: 'anna@beispiel.ch', vorname: 'Anna', website: '' }),
});
const { ok, ergebnis } = await r.json();
// ergebnis: bestaetigen | angemeldet | fehler_adresse | fehler_zu_viele | fehler_seite | fehler_unbekannt