{"id":346264,"date":"2026-07-29T08:43:48","date_gmt":"2026-07-29T08:43:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/multimage-image-uploads-for-wpforms\/"},"modified":"2026-10-15T12:35:52","modified_gmt":"2026-10-15T12:35:52","slug":"multimage-image-uploads-for-wpforms","status":"publish","type":"plugin","link":"https:\/\/li.wordpress.org\/plugins\/multimage-image-uploads-for-wpforms\/","author":20545557,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"7.0.7","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Multimage \u2013 Image Uploads for WPForms","header_author":"Akshat Saxena","header_description":"Adds a Multi Image Upload field to the WPForms builder with instant AJAX pre-upload, per-field limits, and notification email attachments.","assets_banners_color":"a27af0","last_updated":"2026-10-15 12:35:52","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"","rating":5,"author_block_rating":0,"active_installs":10,"downloads":320,"num_ratings":1,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"developerakshat","date":"2026-10-15 12:35:52","revision":3748472}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":1},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3748047,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3748047,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3748047,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3748047,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3748473,"resolution":false,"location":"assets","locale":"","contents":"{\"landingPage\":\"\\\/wp-admin\\\/admin.php?page=wpforms-overview\",\"preferredVersions\":{\"php\":\"8.0\",\"wp\":\"latest\"},\"phpExtensionBundles\":[\"kitchen-sink\"],\"features\":{\"networking\":true},\"steps\":[{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"wpforms-lite\"},\"options\":{\"activate\":true}},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"multimage-image-uploads-for-wpforms\"},\"options\":{\"activate\":true}}]}"}},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3748047,"resolution":"1","location":"assets","locale":"","width":1200,"height":900},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3748047,"resolution":"2","location":"assets","locale":"","width":1600,"height":820},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3748047,"resolution":"3","location":"assets","locale":"","width":1600,"height":825},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3748047,"resolution":"4","location":"assets","locale":"","width":1600,"height":804}},"screenshots":{"1":"The Multi Image Upload field on a live WPForms form, ready for visitors to attach images.","2":"The Multi Image Upload field available in the WPForms builder's Standard Fields panel, added to a form.","3":"Field settings: Max File Uploads, Allowed File Extensions, and Max File Size (MB).","4":"General field settings: Label, Description, and Required toggle."}},"plugin_section":[],"plugin_tags":[1088,1346,1722,273670,130711],"plugin_category":[50],"plugin_contributors":[273671],"plugin_business_model":[],"class_list":["post-346264","plugin","type-plugin","status-publish","hentry","plugin_tags-addon","plugin_tags-attachments","plugin_tags-image-upload","plugin_tags-photo-upload","plugin_tags-wpforms","plugin_category-media","plugin_contributors-developerakshat","plugin_committers-developerakshat"],"banners":{"banner":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/banner-772x250.png?rev=3748047","banner_2x":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/banner-1544x500.png?rev=3748047","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/icon-128x128.png?rev=3748047","icon_2x":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/icon-256x256.png?rev=3748047","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/screenshot-1.png?rev=3748047","caption":"The Multi Image Upload field on a live WPForms form, ready for visitors to attach images."},{"src":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/screenshot-2.png?rev=3748047","caption":"The Multi Image Upload field available in the WPForms builder's Standard Fields panel, added to a form."},{"src":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/screenshot-3.png?rev=3748047","caption":"Field settings: Max File Uploads, Allowed File Extensions, and Max File Size (MB)."},{"src":"https:\/\/ps.w.org\/multimage-image-uploads-for-wpforms\/assets\/screenshot-4.png?rev=3748047","caption":"General field settings: Label, Description, and Required toggle."}],"raw_content":"<!--section=description-->\n<h4>Video Walkthrough<\/h4>\n\n<p>Watch the complete walkthrough and demo of Multimage:<\/p>\n\n<p>https:\/\/www.youtube.com\/watch?v=XG80kG8uRe0<\/p>\n\n<p>Multimage is a lightweight multiple image upload addon for WPForms. It adds a dedicated <strong>Multi Image Upload<\/strong> field to the WPForms form builder \u2014 built specifically for <strong>WPForms Lite<\/strong> \u2014 letting visitors attach multiple photos, screenshots, and images to a single form submission without purchasing WPForms Pro.<\/p>\n\n<p>By default, WPForms Lite does not include an image or photo upload field. Multimage solves this completely free, providing instant photo previews, secure AJAX uploads, and automatic email attachments.<\/p>\n\n<blockquote>\n  <p>This is an independent, third-party add-on. It is not affiliated with, endorsed by, or sponsored by WPForms or Awesome Motive, Inc. \"WPForms\" is a trademark of its respective owner and is used here only to describe compatibility.<\/p>\n<\/blockquote>\n\n<p><strong>Key Features<\/strong><\/p>\n\n<ul>\n<li><strong>Multi Image Upload Field<\/strong> \u2014 easily drag and drop into any WPForms form from the Standard Fields panel<\/li>\n<li><strong>Built for WPForms Lite<\/strong> \u2014 accept multiple image uploads on your forms without paying for a WPForms Pro license<\/li>\n<li><strong>Works with AJAX on or off<\/strong> \u2014 images pre-upload instantly via AJAX on selection, ensuring zero data loss during form submission<\/li>\n<li><strong>Individual Remove Buttons<\/strong> \u2014 visitors can preview selected photos and remove unwanted images before submitting<\/li>\n<li><strong>Custom Field Settings<\/strong> \u2014 configure Button Text, Max File Uploads, Allowed File Extensions, and Max File Size (MB) directly in the builder<\/li>\n<li><strong>Email Attachments<\/strong> \u2014 uploaded images are attached directly to WPForms notification emails<\/li>\n<li><strong>Email Template Integration<\/strong> \u2014 image links are automatically included in the <code>{all_fields}<\/code> email tag<\/li>\n<li><strong>Strict Security &amp; Validation<\/strong> \u2014 server-side content-based MIME validation (images only), file extension whitelist, and size limit checks<\/li>\n<li><strong>Automatic Cleanup<\/strong> \u2014 temporary uploads from abandoned form submissions are automatically deleted after 24 hours<\/li>\n<li><strong>Clean Media Library<\/strong> \u2014 uploaded images are saved in your WordPress uploads folder without cluttering your WordPress Media Library<\/li>\n<\/ul>\n\n<p><strong>How it works<\/strong><\/p>\n\n<p>When a visitor selects photos or images, each file uploads immediately to a temporary directory through a secure AJAX endpoint. Lightweight security tokens travel with the form submission, and upon successful validation, images are moved into your standard WordPress uploads folder (<code>wp-content\/uploads\/year\/month<\/code>).<\/p>\n\n<p><strong>Requirements<\/strong><\/p>\n\n<ul>\n<li>WPForms Lite (or WPForms Pro)<\/li>\n<\/ul>\n\n<h4>Check Out My Other Plugins<\/h4>\n\n<p>If you find Multimage helpful, feel free to check out my other free WordPress plugins:<\/p>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/flash-sale-stock-guard-for-woocommerce\/\">Flash Sale Stock Guard for WooCommerce<\/a> \u2014 Prevent overselling during limited drops and flash sales by reserving stock at add-to-cart.<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/quovex-blocks\/\">Quovex Blocks<\/a> \u2014 Modern Gutenberg blocks: filterable Query Grid, Post Carousel, Magazine Content Showcase &amp; Notification Banner.<\/li>\n<li><a href=\"https:\/\/wordpress.org\/plugins\/story-video-block\/\">Story Video Block<\/a> \u2014 Fast video player, YouTube\/Vimeo embed &amp; video testimonials for Gutenberg with click-to-play lazy loading.<\/li>\n<\/ul>\n\n<h3>Privacy<\/h3>\n\n<p>This plugin stores images uploaded by visitors on your server, in the WordPress uploads directory. Uploaded images may be attached to notification emails you configured in WPForms. No data is sent to any external service.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>multimage-image-uploads-for-wpforms<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory, or install directly through the WordPress \"Add New Plugin\" screen.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Open or create any form in the WPForms builder and drag the <strong>Multi Image Upload<\/strong> field into your form.<\/li>\n<li>Customize your field settings in the Field Options panel:\n\n<ul>\n<li><strong>Button Text:<\/strong> Custom label for the upload button (e.g., \"Upload Images\").<\/li>\n<li><strong>Max File Uploads:<\/strong> Maximum number of images allowed per submission (e.g., 5).<\/li>\n<li><strong>Allowed File Extensions:<\/strong> Comma-separated image extensions (<code>jpg, jpeg, png, webp, gif<\/code>).<\/li>\n<li><strong>Max File Size (MB):<\/strong> Maximum upload size per image.<\/li>\n<\/ul><\/li>\n<li>Save and publish your form.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20work%20with%20wpforms%20lite%3F\"><h3>Does this work with WPForms Lite?<\/h3><\/dt>\n<dd><p>Yes! In fact, that is the primary reason Multimage was created. WPForms Lite does not provide an image upload field by default, and Multimage adds multiple image uploads completely free without requiring WPForms Pro.<\/p><\/dd>\n<dt id=\"can%20users%20upload%20non-image%20files%20like%20pdfs%20or%20documents%3F\"><h3>Can users upload non-image files like PDFs or documents?<\/h3><\/dt>\n<dd><p>No. Multimage is specifically built and secured for photos and images only. The upload endpoint strictly enforces an image-only whitelist (jpg, jpeg, png, gif, webp) with content-based MIME detection, keeping your site secure and fast.<\/p><\/dd>\n<dt id=\"where%20are%20uploaded%20images%20stored%3F\"><h3>Where are uploaded images stored?<\/h3><\/dt>\n<dd><p>In your standard WordPress uploads directory (<code>wp-content\/uploads\/year\/month<\/code>) after successful form submission. Before submission, temporary files are held in a secure temporary folder and automatically purged after 24 hours if abandoned.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20ajax%20form%20submission%20enabled%3F\"><h3>Does it work with AJAX form submission enabled?<\/h3><\/dt>\n<dd><p>Yes. Images are pre-uploaded on selection, so it works reliably whether WPForms AJAX form submission is enabled or disabled.<\/p><\/dd>\n<dt id=\"how%20many%20images%20can%20a%20visitor%20upload%3F\"><h3>How many images can a visitor upload?<\/h3><\/dt>\n<dd><p>You decide! You can configure the <strong>Max File Uploads<\/strong> setting for each Multi Image Upload field in your form. You can also use multiple fields with different limits on the same form (e.g., one field for a profile photo and another for receipt\/screenshot uploads).<\/p><\/dd>\n<dt id=\"do%20uploaded%20images%20appear%20in%20the%20wordpress%20media%20library%3F\"><h3>Do uploaded images appear in the WordPress Media Library?<\/h3><\/dt>\n<dd><p>No. Uploaded images are stored in your uploads directory and attached to notification emails, but they are not registered as Media Library attachments so your WordPress Media Library stays completely uncluttered.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20for%20photo%20submissions%2C%20customer%20receipts%2C%20or%20support%20forms%3F\"><h3>Can I use this for photo submissions, customer receipts, or support forms?<\/h3><\/dt>\n<dd><p>Yes. Any contact form that requires visitors to upload multiple images \u2014 such as customer photos, screenshot attachments for support requests, job applications, or contest entries \u2014 can use the Multi Image Upload field.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<\/ul>","raw_excerpt":"Add multiple image and photo uploads to WPForms Lite with instant AJAX uploads, custom limits, and email attachments. No Pro required.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/346264","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=346264"}],"author":[{"embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/developerakshat"}],"wp:attachment":[{"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=346264"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=346264"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=346264"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=346264"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=346264"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/li.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=346264"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}