Contact Form 7 Database & Submissions Analytics - Poly Form for WordPress Project

Automated CF7 Form Submissions Database & Analytics Addon for WordPress

281.74 ms

The Contact Form 7 Database & Submissions Analytics (Poly Form - wppolyform) plugin is an essential WordPress extension that automatically intercepts, sanitizes, and archives all Contact Form 7 entries directly into your WordPress database. Never lose a valuable customer lead or inquiry due to server email delivery failures.

Core Features & Subsystems

1. Automatic Submission Interception & Sanitization

  • CF7 Event Listener: Hooks into wpcf7_mail_sent upon successful submission, capturing form_id, form_title, submission date, client IP address, and User-Agent.
  • Data Cleansing: Automatically strips internal CF7 system fields (_wpcf7, _wpcf7_version, captcha tokens) to maintain clean records.

2. High-Performance Relational Database Storage

  • Master Submissions Table (poly_form_submissions): Stores submission metadata, timestamps, IP addresses, and user-agent details.
  • Relational Field Values Table (poly_form_fields): Maps dynamic form input key-value pairs (submission_id, field_name, field_value) with indexed database queries.

3. Admin Submissions Management & Modal Viewer

  • Smart Menu Placement: Positioned directly beneath Contact Form 7 in WP Admin.
  • AJAX Search & Filter: Filter entries by Form Title, Date Range, or Keywords with smooth AJAX pagination.
  • Instant Detail Modal: View complete submission payloads in a clean popup modal without page reloads.

4. Visual Analytics Dashboard

  • Interaction Trends: Graphical charts illustrating daily, weekly, and monthly submission volumes.
  • Form Response Distribution: Metrics detailing response rates across all active CF7 forms on your site.

System Architecture & Data Flow

graph TD A[Frontend CF7 Submission Sent Event wpcf7_mail_sent] --> B[PolyForm::save_form_data Data Capture] B --> C[Strip Internal CF7 Tokens & Sanitize Form Inputs] C --> D[Insert Metadata into poly_form_submissions] D --> E[Insert Field Key-Values into poly_form_fields] E --> F[Trigger Admin Dashboard Stats & Response Logs] F --> G[Render AJAX Submissions Table & Inspection Modal]