Adding a **Drag and Drop** interface for **Multiple File Uploads** to Contact Form 7 (CF7) significantly improves the user experience, especially for job applications or support tickets. Since CF7 does not include this feature by default, you will need an extension.
The most popular and reliable option is the **Drag and Drop Multiple File Upload for Contact Form 7** plugin by Glen Don L. Mongaya.
---
### 1. Recommended Plugin: Drag and Drop Multiple File Upload
This plugin is the "gold standard" for this specific feature, boasting over **60,000+ active installations** and a high user rating.
* **Key Features (Free):**
* **AJAX Uploader:** Files upload instantly with a progress bar.
* **Validation:** Set limits on file types (extensions) and individual file sizes.
* **Multiple Uploads:** Allows users to select or drag many files at once.
* **Manage Submissions:** Delete uploaded files before the form is sent.
* **Pro Features:**
* **Cloud Storage:** Send files directly to **Google Drive, Dropbox, Amazon S3, or FTP**.
* **Zip Files:** Automatically compress multiple uploads into a single ZIP archive for the email attachment.
* **Media Library:** Save uploaded files directly to your WordPress Media Library.
* **Chunked Uploads:** Supports very large files by breaking them into smaller parts to avoid server timeouts.
Drag and Drop Multiple File Upload
---
### 2. How to Set It Up (Step-by-Step)
Once you have installed the plugin, follow these steps to integrate it into your existing forms:
1. **Generate the Tag:**
* Go to **Contact > Contact Forms** and edit your form.
* In the **Form** tab, click on the **Drag and Drop Upload** button in the toolbar.
* Configure your settings (e.g., `filetypes:pdf|jpg|zip`, `limit:10mb`, `max-file:5`).
* Click **Insert Tag**. It will look something like `[mfile upload-file-123]`.
2. **Configure the Email Attachment:**
* Go to the **Mail** tab of your form.
* In the **File Attachments** field at the bottom, paste the mail-tag generated (e.g., `[upload-file-123]`).
* *Note:* If you have the Pro version and want to send files as links instead of attachments, you would place the tag in the **Message Body** instead.
3. **Global Settings:**
* Go to **Contact > Drag & Drop Upload** to change the global text (like "Drag & Drop Files Here") or to switch between **Dark** and **Light** themes.
---
### 3. Comparison with Native CF7 Uploads
| Feature | Native CF7 `[file]` | Drag & Drop Addon `[mfile]` |
| --- | --- | --- |
| **Interface** | Standard "Choose File" button | **Drag and Drop area + Browse** |
| **Multiple Files** | Requires multiple fields | **One field handles many files** |
| **Progress Bar** | No | **Yes (AJAX)** |
| **UX** | Dated | **Modern & Intuitive** |
### 💡 Performance Tip: Server Limits
If your users are trying to upload large files (e.g., a 20MB video) and the upload fails, it is often due to your server's **PHP limits**. You may need to ask your host to increase your `upload_max_filesize` and `post_max_size` settings in the `php.ini` file.
**Would you like me to show you the specific shortcode parameters to limit uploads to only "Images and PDFs" while capping the total size at 25MB?**
Subscribe to access unlimited downloads of themes, videos, graphics, plugins, and more premium assets for your creative needs.
Published:
Jan 21, 2026 12:21 PM
Version:
v3.5.6
Category:
Author:
OtherLicense:
GPL v2 or Later