Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/nextab/jfb-brevo-add-on/archive/refs/heads/main.zipJetFormBuilder-Action für Newsletter-Anmeldungen über die Brevo-API. Double Opt-In läuft serverseitig. Auf der Website liegt kein Brevo-Script.
Stand: der bei GINGER HPC live gegangene Ablauf, ohne projektfeste Listen- oder Template-IDs.
Was das Plugin tut
- Eigene Action Brevo Double Opt-In (
jfb_brevo_doi) in JetFormBuilder. - Schickt die Adresse an
POST /v3/contacts/doubleOptinConfirmation. - Brevo verschickt das DOI-Template. Erst der Klick auf
{{ doubleoptin }}trägt den Kontakt in die Liste ein. - Einstellungen unter Einstellungen → JFB Brevo: API-Key, Liste, DOI-Template, Ziel-URL nach dem Confirm-Klick.
- Listen und Templates kommen per Ajax aus dem Brevo-Konto, sobald ein Key da ist.
Was es nicht tut
- Kein Brevo-/Sendinblue-WordPress-Plugin, kein Tracker, kein Formular-iframe.
- Keine Kampagne, kein Template-HTML. Das DOI-Template bleibt in Brevo und muss
{{ doubleoptin }}enthalten. - Kein Abmeldeformular. Den Footer-Link
{{ unsubscribe }}in Brevo auf die eigene Abmeldeseite legen, sonst zeigt Brevo seine eigene Seite.
Voraussetzungen
- WordPress 6.1+, PHP 8.0+
- JetFormBuilder aktiv
- Brevo-Konto mit API-Key und einem aktiven Double-Opt-in-Template
Einbau
Ordner jfb-brevo nach wp-content/plugins/ kopieren und aktivieren.
API-Key in wp-config.php, vor ABSPATH:
define('JFB_BREVO_API_KEY', 'xkeysib-…');
Die Konstante gewinnt. Das Feld im Backend ist dann aus. Ohne Konstante darf der Key in den Plugin-Einstellungen stehen. Der wandert in die Option jfb_brevo_settings.
Formular
- JetFormBuilder-Formular, nicht ein vorhandenes Kontaktformular umbauen.
- Felder: E-Mail (Pflicht, Name
email), Einwilligungs-Switch (Pflicht, Name z. B.privacyoderconsent, Default aus), Submit. - Action Brevo Double Opt-In. Feld-Map: E-Mail und Einwilligung. Liste, Template und Bestätigungs-URL leer lassen, wenn die Plugin-Einstellungen gelten sollen.
- Honeypot an. Kein Google-Captcha.
- Success-Text: Postfach prüfen, Link in der Mail klicken.
Fehlt die Feld-Map, sucht das Plugin die E-Mail im Request und die Einwilligung unter privacy, privacy_policy, consent, datenschutzbestimmungen.
Leere Bestätigungs-URL fällt auf die Startseite zurück. Besser eine eigene Seite, z. B. /newsletter-bestaetigung/. Hängt die URL ?jfb_brevo=confirmed, setzt das Plugin über dem Inhalt den Satz „Ihre Newsletter-Anmeldung ist bestätigt. Vielen Dank.“
Ablauf
- Submit geht an WordPress, nicht an Brevo im Browser.
- Plugin prüft E-Mail und Einwilligung, dann DOI-Call.
- Brevo mailt das Template. Der Button muss auf
{{ doubleoptin }}zeigen. - Klick bestätigt und leitet auf die hinterlegte URL.
Fehler landen in der Option jfb_brevo_last_error und unten auf der Einstellungsseite. Die Mailadresse wird dort maskiert.
WP-CLI
wp jfb-brevo status
wp jfb-brevo ping
status zeigt nie den Key. ping listet Konto, Listen und Templates.
Deinstallation
uninstall.php löscht jfb_brevo_settings und jfb_brevo_last_error. Formulare in JetFormBuilder bleiben.