Skip to content

Mostafizur-code/wp-emcontact-form-plugin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

=== EmContact Form ===
Contributors: mostafizurcodes
Tags: contact form, email, ajax form, form builder, drag-drop form, responsive form, custom form
Requires at least: 5.0
Tested up to: 6.7
Stable tag: 1.0.0
Requires PHP: 7.4
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Professional, fully customizable contact form plugin with drag-drop fields, AJAX submission, email notifications, and advanced styling options.

== Description ==

EmContact Form is a powerful, lightweight, and fully customizable WordPress contact form plugin that allows you to create beautiful, responsive contact forms without any coding knowledge.

= Key Features =

**Form Builder Features:**
* ✅ Drag & Drop form fields (reorder easily)
* ✅ 5+ field types (text, email, phone, textarea, and more)
* ✅ Add/Remove fields dynamically
* ✅ Required field validation
* ✅ Custom labels and placeholders
* ✅ Enable/disable individual fields

**Email Features:**
* ✅ Admin email notifications
* ✅ User confirmation emails (automatic)
* ✅ Custom email subjects and templates
* ✅ HTML email support
* ✅ Multiple recipient support

**AJAX & Performance:**
* ✅ AJAX form submission (no page reload)
* ✅ Smooth animations and transitions
* ✅ Fast and lightweight (only loads when needed)
* ✅ No jQuery conflicts

**Styling Options:**
* ✅ 100% responsive design (mobile, tablet, desktop)
* ✅ Custom colors (primary, button, hover)
* ✅ Background options (color, gradient, image)
* ✅ Custom font family and size
* ✅ Dark mode support
* ✅ Border radius control
* ✅ Glassmorphism effect ready

**Submission Management:**
* ✅ Store submissions in database
* ✅ View all submissions in admin panel
* ✅ Export submissions to CSV
* ✅ Delete individual or all submissions
* ✅ IP address tracking
* ✅ User agent logging
* ✅ Auto-cleanup after 30 days

**Security Features:**
* ✅ Nonce verification (secure forms)
* ✅ Data sanitization and validation
* ✅ XSS protection
* ✅ CSRF protection
* ✅ SQL injection prevention

**Developer Friendly:**
* ✅ Clean, well-commented code
* ✅ Action hooks and filters for extensibility
* ✅ Translation ready (.pot file included)
* ✅ WordPress coding standards
* ✅ No external dependencies

= Shortcodes =

Basic contact form:
`[emcontact_form]`

Contact form with custom title:
`[emcontact_form title="Get in Touch" description="Send us a message"]`

Simple contact form:
`[emcontact_simple]`

= Why Choose EmContact Form? =

1. **No Coding Required** - Everything is managed through an intuitive admin interface
2. **Lightweight** - Only 50KB CSS + 30KB JavaScript, no bloat
3. **Privacy Focused** - No external services, your data stays on your server
4. **GDPR Ready** - Store only necessary data, auto-cleanup feature
5. **Accessibility Ready** - ARIA labels, keyboard navigation, screen reader compatible
6. **SEO Optimized** - Semantic HTML, proper heading structure

= Use Cases =

* **Business Websites** - Professional contact forms for companies
* **Freelance Portfolios** - Let potential clients reach you easily
* **E-commerce Sites** - Customer support and inquiry forms
* **Non-Profit Organizations** - Donation and volunteer contact forms
* **Educational Institutions** - Student and parent inquiry forms
* **Real Estate Websites** - Property inquiry forms
* **Restaurants & Hotels** - Reservation and booking inquiries

== Installation ==

= Automatic Installation =

1. Go to WordPress Admin → Plugins → Add New
2. Search for "EmContact Form"
3. Click "Install Now"
4. Click "Activate"

= Manual Installation =

1. Download the plugin zip file
2. Go to WordPress Admin → Plugins → Add New → Upload Plugin
3. Choose the zip file and click "Install Now"
4. Click "Activate"

= FTP Installation =

1. Extract the zip file
2. Upload the `emcontact-form` folder to `/wp-content/plugins/`
3. Go to WordPress Admin → Plugins
4. Activate "EmContact Form"

= Post-Installation Setup =

1. After activation, go to **Settings → EmContact Form**
2. Configure your form fields (drag & drop to reorder)
3. Set up email notifications
4. Customize colors and styling
5. Save your settings

= Adding Form to Pages =

Simply add this shortcode to any page or post:

`[emcontact_form]`

That's it! Your contact form is now live.

== Frequently Asked Questions ==

= How do I add the contact form to my website? =

Simply add the shortcode `[emcontact_form]` to any page, post, or widget area.

= Can I add custom fields to the form? =

Yes! Go to Settings → EmContact Form → Form Fields tab. You can add, remove, and reorder fields easily.

= Does this plugin support AJAX submission? =

Yes! Form submissions are handled via AJAX, so there's no page reload.

= Can I change the form colors? =

Absolutely! Go to Settings → EmContact Form → Style Settings tab. You can customize primary colors, button colors, backgrounds, and more.

= Does it work with page builders? =

Yes! The plugin works perfectly with all major page builders including Elementor, Beaver Builder, Divi, WPBakery, and Gutenberg.

= Does the plugin store form submissions? =

Yes, all submissions are stored in your WordPress database. You can view, delete, or export them from the admin panel.

= Are email notifications customizable? =

Yes! You can customize admin email recipient, subject line, and user confirmation emails.

= Can I redirect users after form submission? =

Yes! In the Email Settings tab, you can set a custom redirect URL.

= Does it support reCAPTCHA? =

Yes! Google reCAPTCHA v2 is supported. Enable it in Email Settings and add your site keys.

= Is the plugin translation ready? =

Yes! The plugin includes a .pot file and is fully translation ready.

= Will this plugin work with caching plugins? =

Yes! The plugin uses AJAX for submissions, so it works perfectly with all caching plugins.

= How do I export submissions? =

Go to EmContact Form → Submissions, then click the "Export to CSV" button.

= Does this work in dark mode? =

Yes! The plugin has built-in dark mode support. Enable it in Style Settings.

= Is this plugin GDPR compliant? =

The plugin stores only necessary data (name, email, message, IP, user agent) and provides auto-cleanup options. You can also disable IP logging if needed.

= Can I use this on multiple websites? =

Yes! The plugin is GPL licensed, so you can use it on unlimited websites.

== Screenshots ==

1. The contact form frontend with modern design
2. Form fields manager with drag & drop interface
3. Email settings configuration panel
4. Style customization options
5. Submissions management table
6. Mobile responsive view
7. AJAX submission with success message
8. Dark mode example

== Changelog ==

= 1.0.0 =
* Initial release
* Complete form builder with drag & drop fields
* AJAX form submission
* Email notifications (admin + user)
* Submissions database storage
* Export to CSV functionality
* Full styling customization
* Dark mode support
* Responsive design
* 5+ field types
* Translation ready
* WordPress coding standards compliance

== Upgrade Notice ==

= 1.0.0 =
First stable release. Includes all core features: form builder, email notifications, AJAX submission, submissions database, styling options, and responsive design.

== Privacy ==

= What data does this plugin collect? =

When someone submits a form, the plugin stores:
* Form field data (name, email, message, etc.)
* IP address (for spam prevention)
* User agent (browser information)
* Timestamp of submission

= How long is data retained? =

Submissions are kept for 30 days by default. You can modify this via the `emcf_cleanup_days` filter.

= Can I disable IP logging? =

Yes, you can filter out IP logging by using:
`add_filter('emcf_log_ip', '__return_false');`

= Does this plugin share data with third parties? =

No. All data stays on your server. The plugin does not send any data to external services.

= Compliance =

The plugin is designed to be GDPR compliant by:
* Only storing necessary data
* Providing auto-cleanup options
* Allowing data export via CSV
* Providing deletion options

== Additional Information ==

= Recommended PHP Configuration =

* PHP version: 7.4 or higher
* Memory limit: 64MB or higher
* Max input time: 60 seconds

= Support =

For support, feature requests, or bug reports, please visit:
https://wordpress.org/support/plugin/emcontact-form


= Translations =

You can help translate the plugin into your language:
https://translate.wordpress.org/projects/wp-plugins/emcontact-form

== Hooks & Filters for Developers ==

= Actions =

`emcf_before_form_render` - Runs before the form is rendered
`emcf_after_form_render` - Runs after the form is rendered
`emcf_before_submission_save` - Runs before saving submission
`emcf_after_submission_save` - Runs after saving submission
`emcf_before_email_send` - Runs before sending emails

= Filters =

`emcf_form_fields` - Filter form fields before rendering
`emcf_email_headers` - Modify email headers
`emcf_admin_email_subject` - Modify admin email subject
`emcf_user_email_subject` - Modify user email subject
`emcf_cleanup_days` - Change submission cleanup days (default: 30)
`emcf_log_ip` - Disable IP logging (default: true)

= Examples =

Disable IP logging:
```php
add_filter('emcf_log_ip', '__return_false');

About

WordPress plugin for creating beautiful, responsive contact forms with drag-and-drop form builder, AJAX submission, email notifications, database storage, CSV export, dark mode support, and complete style customization. GDPR compliant and WordPress.org standards ready.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors