LeadMagnet 2.0.0
First public release. LeadMagnet is a self-hosted WordPress plugin for capturing, managing, routing, and following up on leads — with no external SaaS. Everything (leads, consents, partners, feedback) lives in your own database.
This release makes the plugin country-agnostic and fully translatable: it ships in English and works in any market out of the box.
✨ Highlights
- Form builder (shortcode + JSON): text, email, tel, number, textarea, select, radio, and checkbox fields with per-field mapping.
- Private lead store: dedicated tables, never exposed through the public REST API or the WordPress front end. REST endpoints are write-only.
- Spam protection: honeypot + timing gate + per-IP rate limiting, plus optional Cloudflare Turnstile or Google reCAPTCHA v2/v3.
- GDPR built in: consent logging with proof (timestamp, text, policy version, hashed IP/UA), JSON data export, automatic anonymization by retention window, and opt-in data deletion on uninstall.
- Partner routing (optional): match partners by postal-code prefix and service, with per-day/per-month caps and priority.
- Per-partner billing: configurable pricing rules, a billing screen grouped by partner, and "mark as billed".
- Customer reviews: a 1–5 star widget — high ratings go to your public review page (Google/Trustpilot/…), low ratings are captured privately so you can follow up.
- Automated emails: transactional confirmations plus scheduled follow-ups, all editable, with per-field placeholders.
🌍 Works in any country — no code required
Everything below is on Settings → Localization / Currency:
- Postal codes: choose
Any(letters + numbers — works for UKSW1A 1AA, CanadaK1A 0B1, …) orNumeric only, with a configurable max length. - City field: a normal editable field by default, so it works everywhere. Optional auto-fill from a postal-code dataset you provide (documented JSON format; a Finnish example dataset is bundled).
- Currency: configurable symbol, position, and price note (e.g.
excl. VAT). - Generic email templates: industry-agnostic, and every submitted field is available in templates as
{field_key}/{field_key_label}.
🔒 Safe by default
- All automated emails (review request, service reminder) are OFF by default and individually switchable — nothing is sent to customers unexpectedly on a fresh install.
- Fixed a bug where Settings toggles for the review/reminder emails did nothing; the Emails page is now the single source of truth for enabling, editing, and timing them.
- Added an on/off switch for the low-rating notification email.
📦 Install
The repository is the plugin (leadmagnet.php is at the repo root), so the download installs directly — no unzipping by hand.
- Download
leadmagnet.zipbelow (or Code → Download ZIP). - In WordPress: Plugins → Add New → Upload Plugin → choose the ZIP → Install Now → Activate.
Requirements: WordPress 6.0+, PHP 7.4+.
🌐 Translating
Fully internationalized (text domain leadmagnet). Use the template at languages/leadmagnet.pot to create a .po/.mo for your locale (e.g. leadmagnet-fi_FI.mo), or use Loco Translate.
Full details: see CHANGELOG.md · License: GPL-2.0-or-later