Custom Contact Forms

Custom Contact Forms

3.5/5 (171 ratings) 6K+ active installs Updated Jun 19, 2026

Custom Contact Forms lets you build forms and manage submissions entirely within WordPress. The drag-and-drop builder lives inside the media manager — no separate admin pages, no learning a new interface. Live previews update as you build, and forms can be inserted via shortcode, Gutenberg block, widget, or PHP function.

This plugin is actively maintained. Originally created by Taylor Lovett, it is now maintained by Dmitry Alexander as of 2026. Version 7.9.0 is a comprehensive modernization: security hardened, PHP 8+ compatible, with new features and a modern UI.

What You Can Build

  • Contact forms, quote requests, support forms, event registrations, newsletter signups
  • Text, paragraph, email (with optional confirmation), name, phone, website, address (US + international), date/time, dropdowns, checkboxes, radio buttons, file uploads, hidden fields, and HTML blocks
  • Conditional fields and sections — show/hide fields based on other field values
  • Multiple email notifications per form — customize recipients, subject, from name, reply-to, and body with field mapping
  • Post creation on submission — map form fields to post fields, meta, and taxonomies

What’s New in 7.9.0

  • Gutenberg block — Insert forms directly from the block editor with a live server-side preview
  • Cloudflare Turnstile — Modern, invisible, privacy-friendly spam protection (free from Cloudflare)
  • Anti-spam controls — Enhanced honeypot, time-based trap, IP rate limiting, disposable email blocking, keyword blacklist
  • Email diagnostics — Send test emails, view wp_mail failure log, debug delivery issues
  • Copy shortcode — One-click copy from form list, edit screen, and At a Glance panel
  • Modern CSS — Clean, responsive form styles with proper focus states, dark/light theme support
  • Security hardened — Full code audit, XSS fixes, SQL injection prevention, input sanitization, capability checks
  • PHP 8+ compatible — All deprecation warnings and type errors resolved

Features

  • Drag-and-drop form builder with live preview in the media manager
  • Gutenberg block, shortcode, widget, and PHP template support
  • AJAX form submission — no page reloads
  • Export submissions to CSV
  • Import submissions from CSV with automatic column mapping
  • Import and export forms via WordPress XML
  • Multiple form themes (light and dark)
  • Cloudflare Turnstile, reCAPTCHA, and simple captcha options
  • Restrict forms to logged-in users
  • Pause forms with a custom message
  • Customizable completion text or redirect URL
  • Conditional asset loading — only load scripts where forms appear
  • Extensible with hooks, filters, and custom field types
  • Translations: French, Chinese, German, Danish

Quick Start

  1. Go to Forms Forms and Submissions
  2. Click “Manage Form” on any post or page
  3. Drag fields from the sidebar into the form area
  4. Save and insert into your content
  5. Or use the Gutenberg block: search “CCF” in the block inserter

External Services

This plugin optionally connects to the following third-party services for spam protection. These services are only used when the site administrator explicitly enables and configures them.

Google reCAPTCHA

When enabled in the form builder, this plugin loads the Google reCAPTCHA widget on form pages and sends form submission verification requests to Google’s servers. The user’s reCAPTCHA response token is sent to Google for validation. No personal data is sent by the plugin itself — Google may collect usage data through their widget script.

Cloudflare Turnstile

When enabled in Forms Settings Cloudflare Turnstile, this plugin loads the Cloudflare Turnstile widget script on form pages and sends form submission verification requests to Cloudflare’s servers. The user’s Turnstile response token and the visitor’s IP address are sent to Cloudflare for validation.