Description
Sobi Forms is a lightweight contact form plugin built for speed and simplicity. Create multiple forms, embed them anywhere with a shortcode or Gutenberg block, and keep your front-end lean.
Learn more on the official site: sobiforms.com — features, FAQ, and the public roadmap.
Performance-first front-end
- Vanilla JavaScript on the front-end
- ~2.5 KB CSS + JS combined (gzipped transfer; ~8 KB unminified source on form pages)
- Assets enqueue only when a form is rendered on the page – zero impact on other pages
- Script loaded in the footer with
deferstrategy (WordPress 6.3+) - No global front-end CSS frameworks
Form builder (admin only)
- Document-first drag-and-drop editor (React via WordPress
wp-element, loaded only on the form edit screen) - Field types: text, email, textarea, phone, number, select, multiple choice (radio tiles), multi-option checkbox
- Field settings: number min/max; text min/max characters; show/hide label; textarea resize and max length
- Radio and multi-checkbox options edited inline in the builder (add option, remove on hover); dropdown options in the field menu
- Multiple recipient emails per form
- After submit: inline success message or redirect to a published page
- Availability: pause a form or auto-close at a date/time, with a visitor message when closed
Embedding
- Shortcode:
[sobiforms],[sobiforms id="3"],[sobiforms slug="contact"] - Gutenberg block: Sobi Forms Contact with form picker
- Works with any page builder that supports shortcodes or blocks
Submissions
- Email notifications via
wp_mail()(HTML) - Optional database storage (off by default)
- Inbox with read/unread, starred, spam queue, admin notes, search and filters
- Optional Akismet spam filtering (when the Akismet plugin is active)
- Honeypot, nonce verification, rate limiting (5 submissions/hour per hashed IP)
Security
- Nonce on every submission
- Honeypot field
- Server-side field validation against a strict JSON schema
- Capability checks and nonces on all admin actions
- Optional Akismet integration — spam submissions quarantined when the Akismet plugin is active
Privacy Policy
Sobi Forms processes data submitted through your forms. By default:
- Email only – field values are sent to the recipient address(es) you configure per form via
wp_mail(). Nothing is stored in the database unless you enable storage. - Optional database storage – when enabled per form (Forms edit form Settings), submissions are saved in custom tables on your site (
wp_sobiforms_submissions,wp_sobiforms_forms). Each form has its own retention setting (auto-delete after N days). - Hashed IP – when storage is enabled, a one-way SHA-256 hash of the visitor IP is stored with each submission for abuse prevention. Raw IP addresses are not stored.
- Rate limiting – a transient keyed by hashed IP limits submissions to 5 per hour. Transients expire automatically.
- Admin notes – internal notes on submissions are stored in your database and never shown on the front-end or included in emails.
- No tracking – Sobi Forms does not connect to third-party analytics or advertising when processing form submissions.
- Optional Akismet – if you enable Akismet spam filtering and the Akismet plugin is active, submission content may be sent to Akismet’s service for spam checks.
- No data sent to the plugin author – form submissions stay on your server and mail server. The Feedback settings tab links to the ww.wp.xz.cn support forum and sobiforms.com/roadmap only if you choose to open them.
Site owners are responsible for their privacy policy and lawful basis for collecting visitor data.
Installation
- Upload the
sobi-formsfolder to/wp-content/plugins/or installsobi-forms.zipfrom Plugins -> Add New -> Upload. - Activate Sobi Forms through the Plugins menu.
- Go to Sobi Forms -> Forms and create your first form.
- Copy the shortcode from the Install tab, or insert the Sobi Forms Contact block in the block editor.
- Paste the shortcode into any page (Gutenberg, Elementor, Divi, widget, etc.).
FAQ
-
Does Sobi Forms slow down my site?
-
On pages without a form, Sobi Forms adds no front-end CSS or JavaScript.
On pages with a form, only a small vanilla JS file and a minimal stylesheet are loaded (~2.5 KB gzipped combined; ~8 KB unminified) – no React or heavy libraries on the public site.
-
Where is the form builder JavaScript loaded?
-
The admin builder (~70 KB plus WordPress-bundled React) loads only on Sobi Forms -> Forms -> Edit. It never runs on the front-end.
-
Can I use Sobi Forms with Elementor, Divi, or other page builders?
-
Yes. Use the
[sobiforms]shortcode or the Gutenberg block. Assets load when the form HTML is rendered. -
Is database storage required?
-
No. By default, submissions are sent by email only. Enable Save submissions on each form’s Settings tab in the form editor to store messages in the database.
-
Does Sobi Forms include reCAPTCHA?
-
No. Sobi Forms uses a honeypot, WordPress nonces, and rate limiting. reCAPTCHA is intentionally out of scope to keep the plugin lightweight.
-
Yes. When the Akismet plugin is installed and configured, enable Use Akismet to filter form spam under Sobi Forms Settings Usage (on by default). Spam submissions are quarantined in the Submissions inbox, notification emails are skipped, and visitors still see a normal success message.
-
Can I pause a form or close it after a deadline?
-
Yes. In each form’s Settings Availability, pause submissions immediately or set an auto-close date and time (your site timezone). Visitors see your unavailable message instead of the form. Cached pages may still show an open form until the cache refreshes.
-
Can I disable the plugin stylesheet and use my theme styles?
-
Yes. Use the
sobiforms_enqueue_front_assetsfilter to disable CSS while keeping AJAX submission. -
Where can I suggest features or see what is planned?
-
Visit sobiforms.com and the roadmap to follow upcoming releases and submit ideas. For bugs and support, use the ww.wp.xz.cn support forum (linked under Sobi Forms Settings Feedback).
Reviews
Contributors & Developers
“Sobi Forms” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Sobi Forms” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.2.0
- Form availability — pause or auto-close by date/time (site timezone).
- Configurable unavailable message when the form is not accepting submissions.
- Akismet spam filtering (global setting, spam queue in Submissions).
- Submissions inbox — Spam filter, mark as spam / not spam.
- Submissions — auto mark as read on open; Mark all as read.
- Form improvements — field min/max (number, text); multiple choice tiles; multi-option checkboxes with inline option editing in the builder.
1.1.0
- Custom submit button text per form (editor preview + front-end).
- Field settings: show/hide label, textarea resize toggle, max character limit.
- Per-form database storage and retention (moved from global settings).
- Submissions inbox always available in admin.
- Form builder UX polish — context menus, field contrast, layout fixes.
- Settings: removed global Privacy & Storage tab; Feedback links to ww.wp.xz.cn forum and public roadmap.
1.0.0
- Initial release.
- Multi-form builder with shortcode
[sobiforms]and Gutenberg blocksobiforms/contact. - Field types: text, email, textarea, phone, number, select, radio, checkbox.
- Multiple recipient emails, post-submit message or redirect.
- Optional DB storage, submissions inbox with notes and filters.
- Prefix
sobiforms_throughout (ww.wp.xz.cn coding standards). - Conditional front-end assets – load only when a form is rendered.
