Introduction

  • JNext lesson
  • FSearch lessons
  • EscClear search

Core Forms is a lightweight WordPress forms plugin that lets you create forms using plain HTML with AJAX submission handling. Unlike drag-and-drop form builders, Core Forms gives you full control over your form markup while handling all the plumbing: validation, spam protection, email notifications, submission storage, and more.

All premium features are bundled in the core plugin. There are no upsells, no feature gates, and no separate add-on purchases.

Key Features

  • Plain HTML forms. Write your forms in standard HTML. No proprietary markup, no shortcode nesting, no visual builder lock-in.
  • AJAX submission. Forms submit without page reloads. Users get instant feedback.
  • Spam protection. Four built-in methods: honeypot fields, Math CAPTCHA, Google reCAPTCHA v3, and Cloudflare Turnstile. Akismet integration if the plugin is active.
  • Email notifications. Send notification emails on submission. Auto-responders for confirmation emails. Full email logging with delivery status tracking.
  • Submission management. All submissions saved to a custom database table. View, search, edit, reply to, and export submissions from the admin.
  • Conditional fields. Show or hide fields based on other field values using data-show-if and data-hide-if attributes.
  • Template variables. Dynamic content in forms using {{user.email}}, {{post.post_title}}, {{url_params.ref}} syntax.
  • Webhooks. Send form data to external APIs as JSON or form-encoded POST requests.
  • File uploads. Accept file uploads that are stored as WordPress media attachments.
  • Fullscreen forms. Typeform-style one-question-at-a-time interface with progress bar and animations.
  • Polls. Create polls with multiple options, vote tracking, and results display.
  • Gutenberg block. Drop forms into the block editor with a form selector.
  • Shortcode. Embed forms anywhere with [cf_form slug="contact"].
  • Accessibility. Automatic ARIA attributes, label association, keyboard navigation, and screen reader support.
  • GDPR compliance. WordPress privacy API integration for data export and erasure requests.
  • Integrations. Mailchimp (via MC4WP), MailerPress, and Fluent Cart subscriber management.

Requirements

  • WordPress 6.0 or higher
  • PHP 7.4 or higher

Architecture Overview

Core Forms stores each form as a core-form custom post type. The form’s HTML markup lives in post_content. Form settings and messages are stored as post meta.

Submissions are saved to a custom database table (wp_cf_submissions) rather than as posts, keeping the database lean and queries fast.

The plugin is organized into four layers:

  • Core classes (src/) handle form rendering, submission processing, and data management.
  • Admin classes (src/admin/) provide the WordPress admin interface.
  • Actions (src/actions/) run after successful submissions (email, auto-responder, Mailchimp, webhooks).
  • Extensions (extensions/) add self-contained features like file uploads, fullscreen forms, and submission limits.

Namespace and Prefixes

  • PHP namespace: Core_Forms
  • Function prefix: cf_
  • Database tables: wp_cf_submissions, wp_cf_email_logs, wp_cf_submission_replies, wp_cf_polls, wp_cf_poll_votes
  • Post type: core-form
  • Custom capability: edit_forms
  • AJAX action: cf_form_submit
  • REST namespace: cf

Credits

Core Forms is built by Gaurav Tiwari. It is based on the HTML Forms plugin by ibericode and is released under the GPL v3 license.