=== WebKernelAI - Advanced Form Builder === Contributors: aamirsahil Text Domain: webkernelai-advanced-form-builder Tags: contact form, form builder, ajax form, email forms, custom forms Requires at least: 6.0 Tested up to: 6.9 Requires PHP: 7.4 Stable tag: 1.0.2 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html A fast, secure, and scalable form builder using custom database tables and AJAX submissions. == Description == **WebKernelAI - Advanced Form Builder** is a modern, performance-focused WordPress form plugin built for developers, agencies, and production websites. Unlike traditional form plugins that rely on `postmeta`, WKAF uses **custom database tables**, a **schema-driven architecture**, and **clean AJAX handling** to deliver reliable form submissions at scale. WKAF is designed as a modern alternative to traditional contact form plugins, with a free core and a roadmap for professional add-ons (payments, bookings, integrations). ### Why WKAF? – Custom database tables (no `postmeta` abuse) – Schema-based form engine (single source of truth) – Clean OOP architecture with strict separation of concerns – Performance-first design – Security-focused by default – Built to scale to high-traffic sites — ### Who is WKAF built for? – Developers building performance-focused websites – Agencies managing multiple client projects – Production environments requiring reliable data storage – High-traffic websites — ### Built for Performance WKAF stores entries in dedicated database tables with proper indexing. This avoids performance bottlenecks commonly seen when storing form entries in post meta. — == Features == ### Form Builder (Admin) – Drag & drop form builder – Field reorder, duplicate, and delete – Auto-generated unique field names – Field types: – Text – Email – Number – Phone – Textarea – Select – Radio – Checkbox – Checkbox Group – Date – Hidden – Rating (Stars) – File Upload – Terms & Conditions – Required field validation – Dynamic field options editor (select / radio / checkbox group) – JSON-based schema with backward compatibility — ### Frontend Forms – Shortcode-based rendering – AJAX form submission – Inline validation errors – Loading spinner & submit button locking – Custom thank-you message – Minimal default CSS (easy to override) – Per-form custom CSS and optional JavaScript for advanced users (sanitized before output). — ### Entries Management – Custom entries database tables – AJAX-powered admin entries list – Pagination & search – Single entry detail view – Secure file download links – CSV export (Excel-compatible) — ### Email System – Admin notification emails – User confirmation emails – Template editor with dynamic variables: {{field_name}} – Clean variable parsing – Hooks for add-ons – Email delivery failures do not prevent entry storage. — ### SMTP Support – Built-in SMTP configuration – No external SMTP plugin required – Supports: – Host – Port – Encryption – Authentication – Works on localhost & production servers – SMTP test email tool — ### Email Logs – Logs all system-sent emails: – Admin notifications – User confirmations – Test emails – Success & failure status – Privacy-safe (email body is NOT stored) — ### Security & Spam Protection – Nonce validation – Honeypot protection – Google reCAPTCHA: – v2 (checkbox) – v3 (score-based) – Global reCAPTCHA keys – Per-form enable/disable controls – Secure file upload handling — == Performance & Architecture == – No global scripts or styles – Assets loaded only when a form is present – Custom database tables for optimal queries – Indexed meta tables for fast lookups – No third-party dependencies – Clean, namespaced OOP codebase — == Developer Friendly == – Action & filter hooks for add-ons – Extensible email variables – Clean validation pipeline – Add-on ready architecture – No forced design or styling — == Screenshots == 1. Drag & drop form builder 2. Admin entries management 3. Frontend form display — == Installation == 1. Upload the plugin folder to `/wp-content/plugins/` 2. Activate the plugin through the WordPress admin 3. Go to **WKAF > Forms** to create your first form 4. Use the provided shortcode to display the form — == Frequently Asked Questions == = Does WKAF use post meta for storing entries? = No. WKAF uses custom database tables for forms, entries, entry meta, and email logs. — = Does email failure affect form submission? = No. Entries are saved even if email delivery fails. Email failures are logged separately. — = Can I customize form styling? = Yes. WKAF includes minimal default CSS. You can override styles using your theme or per-form custom CSS. — = Is WKAF suitable for high-traffic websites? = Yes. The plugin is designed for performance and scalability, with efficient database queries and no unnecessary asset loading. — = Can WKAF handle large numbers of form entries? = Yes. The admin entries list uses server-side AJAX pagination and loads only a limited number of records per request (10, 25, 50, or 100). This allows the interface to remain responsive even with very large numbers of stored entries. — = Does WKAF support add-ons? = Yes. WKAF is built with a modular architecture and supports add-ons for extended functionality. — == Privacy == WKAF respects user privacy: – Email bodies are NOT stored – Only necessary submission data is saved – Compatible with WordPress personal data export & erase tools – No external tracking or data sharing — == External Services == This plugin integrates with Google reCAPTCHA to prevent spam submissions. What it does: Loads Google reCAPTCHA API on forms where spam protection is enabled. What data is sent: When reCAPTCHA is enabled, the user's IP address and browser information may be transmitted to Google to verify whether the submission is legitimate. Service Provider: Google LLC Terms: https://policies.google.com/terms Privacy: https://policies.google.com/privacy — == Changelog == = 1.0.0 = – Initial public release – Full form builder – AJAX frontend submissions – Email notifications & SMTP – reCAPTCHA v2 & v3 – File uploads – Entries management & export – Email logging — = 1.0.1 = – Security improvements – Nonce verification enhancements – Database query hardening – Minor internal fixes — == Upgrade Notice == = 1.0.1 = Security improvements and internal stability updates. — = 1.0.2 = – Fixed WordPress.org review issues – Improved input sanitization and validation – Fixed prepared SQL queries – Improved escaping and security compliance – PHPCS/WPCS compliance improvements – Internal stability improvements — == Upgrade Notice == = 1.0.2 = Security improvements and internal stability updates. — == Upgrade Notice == = 1.0.3 = Internal stability updates.