Custom fields, richer validation, auto-reply, AJAX, time-trap, and CSV export.
Added
- Custom field types per form: text, email, tel, url, number, textarea, select, checkbox, radio — with label, placeholder, required flag, and options. Define one per line:
key | Label | type | required | option a, option b. - Per-field server-side validation with inline per-field error messages on re-render.
- Auto-reply to the submitter (per-form subject + body with
{site_name}/{field}placeholders) via the same bext managed send → wp_mail path. - Multiple notification recipients per form.
- Time-trap anti-spam (reject submissions faster than N seconds after render) on top of the honeypot — per-form + site/network default.
- CSV export of a form's submissions (admin-only, nonce + capability, UTF-8 BOM, formula-injection guard).
- Per-form success + error messages.
- Optional AJAX submit as progressive enhancement — still works fully without JavaScript.
Notes
- PHP 7.4+, multisite-capable, escape/sanitize/nonce throughout; the self-updater is unchanged (and stays disabled for must-use installs).
- WP-free unit suite expanded to 6 files / 164 assertions.