Zum Hauptinhalt springen

Seiten und Weiterleitungen

Seiten und Weiterleitungen ermöglichen es, eigene Landing-Pages und Weiterleitungsziele für verschiedene Prozesse in mail2many zu hinterlegen. So bleiben Empfänger während des gesamten Anmelde-, Abmelde- und Bestätigungsprozesses in der vertrauten Umgebung deiner Website.

Übersicht

Pro Account können verschiedene Arten von eigenen Seiten und Weiterleitungen konfiguriert werden:

KategorieZweckPflicht
Opt-In BestätigungsseiteLanding-Page nach erfolgreicher Opt-In-BestätigungOptional
Ablauf einer Opt-In SendungHinweisseite bei abgelaufenem Opt-InOptional
AbmeldungenLanding-Page für AbmeldungenOptional
Zielseite(n) für HinweiseFehlerseite für verschiedene FehlerfälleOptional
Seite hinterlegen

Die URL wird in den Account‑Einstellungen unter „Seiten und Weiterleitungen“ hinterlegt.

Opt-In Bestätigungsseite

Zeigt Erfolg nach gültiger Opt-In-Bestätigung. Die Bestätigung selbst erfolgt in mail2many, deine Seite dient als Landing‑Page.

Vorteil: Registrierungs‑ und Bestätigungsseite liegen auf derselben Website/Domain.

Anforderungen:

  • Seite muss öffentlich erreichbar sein
  • Kann in jeder Technologie erstellt werden (auch statisch)
  • Empfohlen: Gleiche Domain wie die Absender‑Adresse (z.B. newsletter@atrivio.de → atrivio.de)

Ablauf

  1. Empfänger registriert sich auf deiner Website
  2. Deine Website ruft POST /subscribers/register bei mail2many auf
  3. mail2many sendet eine Opt‑In‑Sendung (7 Tage gültig)
  4. Empfänger bestätigt innerhalb von 7 Tagen über den Link in der Sendung
  5. mail2many bestätigt und leitet auf deine Bestätigungsseite um
  6. Deine Seite zeigt die Bestätigung

Beispiel: Einfache Bestätigungsseite

Eine simple HTML-Seite könnte so aussehen:

<!doctype html>
<html lang="de">
<head>
<title>Newsletter-Anmeldung bestätigt</title>
</head>
<body>
<h1>Vielen Dank für Ihre Bestätigung.</h1>
<p>Sie haben sich erfolgreich für unseren Newsletter angemeldet.</p>
</body>
</html>

Ablauf einer Opt-In Sendung

Diese Seite wird angezeigt, wenn ein Empfänger versucht, ein abgelaufenes Opt-In zu bestätigen (nach 7 Tagen). Sie informiert über den Ablauf und bietet die Möglichkeit zur erneuten Registrierung.

Anforderungen:

  • Seite muss öffentlich erreichbar sein
  • Kann in jeder Technologie erstellt werden (auch statisch)
  • Empfohlen: Gleiche Domain wie die Absender‑Adresse
info

Erfolgt die Bestätigung nach 7 Tagen, wird nicht bestätigt und auf diese Seite geleitet.

Alternative: Eine einzige Seite

Du kannst auch nur eine Seite für beide Fälle (Bestätigungsseite + Ablauf-Seite) verwenden. Diese wertet den URL-Parameter valid aus:

ParameterWertBeschreibung
validtrue / falseGibt an, ob das Opt‑In noch gültig war und bestätigt wurde

Logik:

  • valid=true → Zeige Erfolgsbestätigung
  • valid=false → Zeige Hinweis zur erneuten Anmeldung

Beispiel: Single-Page-Lösung mit PHP

<?php

/**
* File: newsletter-confirmation.php
*
* Dies ist ein einfaches Beispiel ohne umfassende Validierung
*/

// URL-Parameter auslesen
$isValid = isset($_REQUEST['valid']) && $_REQUEST['valid'] === 'true';

if ($isValid) {
$headline = 'Newsletter-Bestätigung';
$message = 'Sie haben sich erfolgreich für unseren Newsletter angemeldet.';
} else {
$headline = 'Link abgelaufen';
$message = 'Dieser Link ist leider abgelaufen und Sie konnten nicht angemeldet werden. Bitte registrieren Sie sich erneut auf unserer Website.';
}

?>
<!doctype html>
<html lang="de">
<head>
<title><?php echo htmlspecialchars($headline); ?></title>
</head>
<body>
<h1><?php echo htmlspecialchars($headline); ?></h1>
<p><?php echo htmlspecialchars($message); ?></p>
</body>
</html>

Abmeldungen

Eine eigene Abmeldeseite ermöglicht Abmeldungen in deiner Umgebung. Die Abmeldung selbst wird von mail2many durchgeführt, deine Seite dient als Zwischenstation.

warnung

Wichtig: Wenn die Abmeldeseite nicht verfügbar ist, können sich Empfänger nicht abmelden! Du solltest daher eine zuverlässige Erreichbarkeit sicherstellen.

Vorbereitung

Anforderungen:

  • Seite muss öffentlich erreichbar sein
  • Empfohlen: Gleiche Domain wie die Absender‑Adresse

URL-Parameter von mail2many:

ParameterBeispielBeschreibung
unsubscribedtrue / falseGibt an, ob die Abmeldung durchgeführt wurde
pabcdef123Verschlüsselter Parameter mit mail2many‑Daten zur Abmeldung

Die Seite wertet unsubscribed aus:

  • unsubscribed=false → Zeige Bestätigungsseite mit Button "Abmeldung bestätigen"
  • unsubscribed=true → Zeige Erfolgsbestätigung

Bei Klick auf "Bestätigen": Leite zurück zu mail2many mit den Parametern p und force=true

Ablauf

  1. Empfänger klickt den Abmeldelink im Newsletter
  2. mail2many leitet auf deine Abmeldeseite mit Parametern weiter (unsubscribed=false)
  3. Empfänger sieht deine Bestätigungsseite: "Möchten Sie sich wirklich abmelden?"
  4. Empfänger klickt "Bestätigen"
  5. Deine Seite leitet zurück zu mail2many mit p und force=true
  6. mail2many meldet ab und leitet zurück auf deine Seite (unsubscribed=true)
  7. Empfänger sieht die Abmeldebestätigung

Beispiel: Abmeldeseite mit PHP

Datei: newsletter-unsubscribe.php

<?php

/**
* File: newsletter-unsubscribe.php
*
* Dies ist ein einfaches Beispiel ohne umfassende Validierung
*/

// Der mail2many-Parameter (wird verschlüsselt von mail2many übergeben)
$p = isset($_REQUEST['p']) ? $_REQUEST['p'] : '';

// Prüfen ob bereits abgemeldet
if (isset($_REQUEST['unsubscribed']) && $_REQUEST['unsubscribed'] === 'true') {
// Der Empfänger wurde abgemeldet, zeige ihm die Erfolgsseite
header('Location: /newsletter-unsubscribe-erfolgreich.php');
exit;
}

// Prüfen ob Button geklickt wurde
if (isset($_REQUEST['buttonClicked']) && $_REQUEST['buttonClicked'] === 'true') {
// Der Empfänger hat den Button geklickt, leite ihn zu mail2many weiter
// WICHTIG: Ersetze die URL mit deiner mail2many-Instanz
$unsubscribeUrl = 'https://api.mail2many.de/unsubscribe.php?force=true&p=' . urlencode($p);
header('Location: ' . $unsubscribeUrl);
exit;
}

// Der Empfänger möchte sich abmelden - zeige Bestätigungsseite
$confirmUrl = '?p=' . urlencode($p) . '&buttonClicked=true';

?>
<!doctype html>
<html lang="de">
<head>
<title>Newsletter abmelden</title>
</head>
<body>
<h1>Newsletter abmelden</h1>
<p>Sie möchten unseren Newsletter nicht mehr erhalten? Schade!</p>
<p><a href="newsletter-unsubscribe.php<?php echo htmlspecialchars($confirmUrl); ?>">Jetzt abmelden</a></p>
<p>Mit einem Klick werden Sie aus unserem Newsletter-Verteiler entfernt.</p>
</body>
</html>

Datei: newsletter-unsubscribe-erfolgreich.php

<!doctype html>
<html lang="de">
<head>
<title>Abmeldung erfolgreich</title>
</head>
<body>
<h1>Abmeldung erfolgreich</h1>
<p>Ihre Abmeldung vom Newsletter war erfolgreich.</p>
<p>Wir würden uns freuen, Sie bald wieder zu unseren Lesern zählen zu dürfen.</p>
</body>
</html>

Zielseite(n) für Hinweise

Eigene Zielseiten für Hinweise ermöglichen es, Empfänger bei Fehlern in deiner Umgebung zu informieren.

Vorbereitung

Anforderungen:

  • Seite muss öffentlich erreichbar sein
  • Empfohlen: Gleiche Domain wie die Absender‑Adresse

URL-Parameter von mail2many:

ParameterBeispielBeschreibung
reasonCouldNotGetSubscriberGibt den Fehlergrund an

Die Seite kann reason auswerten und eine passende Meldung anzeigen – oder eine generische Fehlermeldung verwenden.

Mögliche Fehlergründe

ReasonKontextBeschreibung
CouldNotGetSubscriberAbmeldungEmpfänger wurde in mail2many gelöscht
CouldNotGetNewsletterBrowser-VersionNewsletter wurde gelöscht
BrowserVersionNotAvailableBrowser-VersionProblem mit der Browser‑Version

Beispiel: Hinweisseite mit PHP

<?php

/**
* File: newsletter-hinweis.php
*
* Dies ist ein einfaches Beispiel ohne umfassende Validierung
*/

// Grund für den Fehler auslesen
$reason = isset($_REQUEST['reason']) ? $_REQUEST['reason'] : '';

// Standard-Fehlermeldung
$title = 'Ein Fehler ist aufgetreten';
$message = 'Es ist leider ein Fehler aufgetreten. Bitte versuchen Sie es später erneut oder kontaktieren Sie unseren Support.';

// Spezifische Fehlermeldungen basierend auf dem Grund
switch ($reason) {
case 'CouldNotGetSubscriber':
$title = 'Empfänger nicht gefunden';
$message = 'Ihre E-Mail-Adresse wurde in unserem System nicht gefunden. Möglicherweise wurden Sie bereits abgemeldet.';
break;

case 'CouldNotGetNewsletter':
$title = 'Newsletter nicht verfügbar';
$message = 'Der angeforderte Newsletter ist nicht mehr verfügbar.';
break;

case 'BrowserVersionNotAvailable':
$title = 'Browser-Version nicht verfügbar';
$message = 'Die angeforderte Browser-Version ist leider nicht mehr verfügbar.';
break;
}

?>

<!doctype html>
<html lang="de">
<head>
<title><?php echo htmlspecialchars($title); ?></title>
</head>
<body>
<h1><?php echo htmlspecialchars($title); ?></h1>
<p><?php echo htmlspecialchars($message); ?></p>
<p>
<a href="/">Zurück zur Startseite</a>
</p>
</body>
</html>
Alternative

Du kannst auch eine generische Fehlerseite ohne Auswertung des reason-Parameters verwenden, wenn du keine spezifischen Meldungen anzeigen möchtest.