📬 WordPress Plugin · v1.0.0 · GPL v2

WP Advanced
Contact Form & CRM

A fully-featured contact form with a built-in CRM dashboard. AJAX submission, server-side rate limiting, View / Reply / Delete from the admin, CSV export, dark mode CRM interface, and REST API endpoints.

CRM Dashboard — Submissions
Name
Email
Subject
Status
Jane Smith
jane@co.com
Website inquiry
New
Tom Lee
tom@biz.io
Partnership offer
Read
Spam Bot
bot@spam.ru
Buy cheap followers
Spam
Setup Guide

Installation & Activation

The plugin activates instantly. No external services or API keys needed.

📦

01 — Upload

Plugins → Add New → Upload Plugin. Select wp-contact-crm.zip and Install Now.

02 — Activate

Click Activate. Creates the wp_wpcf_submissions database table. Registers all AJAX and REST endpoints.

⚙️

03 — Settings

Go to Contact CRM → Settings. Set notification email, rate limit window, and honeypot field toggle.

📝

04 — Embed Form

Add [contact_form] to any page. Configure fields using shortcode attributes and publish.

Core Features

What's Inside

📬

AJAX Contact Form

Submits without page reload. Client-side validation + server-side sanitisation and nonce verification.

🚦

Rate Limiting

Configurable IP-based rate limiter prevents spam flooding. Uses WordPress transients as the storage layer.

🍯

Honeypot Field

Hidden honeypot field invisible to humans. Bots that fill it in are silently rejected with no error message.

💼

CRM Dashboard

Full submission management: View message preview, Reply via email, Delete, and update status — all via AJAX.

📥

CSV Export

Export all or filtered submissions as a CSV file directly from the CRM dashboard.

🔌

REST API

GET submissions with status and date filters. PATCH to update status. POST to submit via API.

📧

Admin Notification

Instant wp_mail() notification on every submission with subject, message preview, and sender details.

🎨

Form Themes

Apply CSS theme classes: wpcf-theme-minimal, wpcf-theme-bordered, wpcf-theme-floating.

Developer Reference

Shortcode & REST API

Contact Form Shortcode

Renders the AJAX contact form. All optional fields can be shown or hidden via attributes.

[contact_form]
[contact_form
  title="Contact Our Team"
  subtitle="We reply within 24 hours"
  show_phone="true"
  show_subject="true"
  class="wpcf-theme-minimal"
]
AttributeDefaultDescription
title"Get In Touch"Form heading.
subtitle""Optional subheading below the title.
show_phonefalseShow/hide optional phone field.
show_subjecttrueShow/hide the subject line field.
class""CSS class for theming: wpcf-theme-minimal, wpcf-theme-bordered.

REST API Endpoints

MethodEndpointAuthDescription
GET/wpcf/v1/submissionsAdminList submissions. Params: status, per_page, page.
PATCH/wpcf/v1/submissions/{id}/statusAdminUpdate status: new, read, replied, spam.
DELETE/wpcf/v1/submissions/{id}AdminPermanently delete a submission.
The Developer

Author Profile

Vetri Suriya
PHP · WordPress · AWS

Building production-quality WordPress plugins with clean architecture, proper security practices, and zero external dependencies. Each plugin in this library demonstrates a complete WordPress technology stack.