The WCUF plugin will let your customer to upload files for purchased products directly from Cart, Checkout, Order details, Product pages!
Note: The plugin, like WordPress, requires a minimum 5.5 PHP version.
LIVE DEMO (please report if it is not working)
url: https://www.codecanyon.eu/wcuf/wp-admin/
user: demo
pass: demo
user: demo1
pass: demo
user: demo2
pass: demo
user: demo3
pass: demo
user: demo4
pass: demo
HOW DOES IT WORK?
The customer will be able to upload one or more files from the Product page, Order Detail page and/or during the Checkout process according to the purchased items …all done using visual progress bars!
Shop admin will find these uploads directly on the backend Order detail page or as an optional feature they can be sent to the shop admin email address.
Note: The plugin supports only native WooCommerce product types (simple and variable), it doesn’t have any support for custom product types implemented by 3rd paty plugins.
HOW TO CONFIGURE
It’s very simple! To configure a new upload field go to Upload files Configurator menu and add a new Upload field.
Once created, the admin has just to configure in which page the field has to be displayed (Product, Cart, Checkout, Order details) and configure its “visibility” according to the filtering criteria (enabled/disabled for specific products, categories or for every item).
This will create one upload field for every matching product (and optionally also for every single variant according to some restrictions in case of Product page) displayed in the selected pages!
Furthermore, for a more deep customization, is also possible to specify some other options like:
- Field title
- HTML/CSS description
- HTML/CSS text showed after the upload has been completed (it’s also possible to use some special shortcodes to display file list with image/audio preview)
- max uploadable file size
- max and min images width, height and DPI (works only if uploaded files are jpg/png. DPI data is read from image EXIF. If it has not a valid EXIF data the upload won’t be permitted)
- allowed file types
- email notifications
- enable multiple files upload per single field
- …and much more!
DROPBOX SUPPORT
WCUF now allows you to save uploaded files on your DropBox account!
Once enabled the special option on the plugin Options menu, whenever an order is placed at the checkout (or when the customer saves the uploads in the Order page), all the temporary uploaded files will be moved from server to your DropBox account!
The plugin will create a folder in your DropBox account under Applications -> WooCommerce Upload Files -> site_name -> {order_id} where files will be saved. In case the upload are bounded to prouct, you will find an additional sub directory product_id-variation_id.
In case of connection errors with DropBox…do not worry! Files will be normally kept on local server and you will be normally able to manage them via the order details page! You will receive a notification email reporting errors details.
NOTE: Keep in mind that temporary files are still saved on your local server, they will be deleted once moved to DropBox. Make sure that max_execution_time (script max execution time) PHP setting is properly configured, otherwise
File move process from server to DropBox may fail in case of big file handling.
Upload unlimited number of files without file size restriction
WooCommerce Upload files allows you to upload unlimited number of files, without any file size restriction. Thanks to its innovative chunk upload technology, it can upload any file without restriction.
EMAIL NOTIFICATION & ATTACHMENTS
As Shop Admin, do you want to be notified whenever an user uploads a file and you want to receive the download link directly via email? Now you can!
For each upload field you can now enable an “Email notification” option.
If you like you can also receive the uploaded files directly in your inbox, thanks to the “Attach uploaded file” option. Furthermore you can also specify multiple recipients email addresses!
NOTE: Some servers have restrictions preventing wp_email() to send attachments bigger than 5mb. If you are experience this kind of problem, you can simply install any SMTP emailer plugin, like https://wordpress.org/plugins/postman-smtp/. This kind of plugins will let you to use any external email services (like gmail, outlook, any smtp server) to send emails.
PRODUCT PAGE UPLOADS
Optionally, is now possible to upload files also before adding item to the cart! (in this case some features are not avaiable)
Shop admin can configure the upload fields to be visible directly on the Product page!
In this way your customers can upload a file (or multiple files according to the “multiple files for single field” option) directly from the product page.
NOTE: Upload fields by default are associated to distinct products in cart. So if the user is adding for example Product 1 (quantity 3) and you have created 2 upload fields, the plugin will display only 2 upload fields not 6 (because there is only 1 product in cart with quantity 3, not 3 distinc products).
If you want add the same product multiple times to cart (in this way the plugin will associate distinct upload fields for each item in cart) use the Individual products feature explained next.
In case of variable product page, if the field has been configured to be visible before adding to the cart and checked the Enable one upload field for every single product variation option, it will be showed only once a variation has been selected.
More in details: The user has to choose a variation on the product page and once done, the plugin will show the associated upload field.
Furthermore is also possible specify where the uploads fields box have to be displayed (before/after variable options dropdowns, product description, etc.) or using the special [wcuf_product_page_upload_form] you can render the upload form inside any product text area supporting shorcodes!
NOTE: Make sure the theme used is using all the standards woocommerce product page template hooks.
If the [wcuf_product_page_upload_form] is used the standard upload field managment for Product pages MUST been disabled (to do that Options -> Forced disabling upload fields standard managment -> Product pages )
INDIVIDUAL PRODUCTS CONFIGURATOR
Would you like to add same product different times to cart in order to upload distinct files? For example you want to sell Business cards so you would like to allow
your customers to add that product multiple times to cart and then upload distinct files for each item? Now you can!
Using the Individual products configurator you have just to select the product and/or the categories you wish to be sold as individual. In this way each time the users adds one of the selected product,
the plugin will add to cart as distinct product. In this way the customer will be able di upload diffrent files for each item in cart.
CHECKOUT, CART AND ORDER PAGES UPLOADS
Every upload can be configured to be visible on cart, checkout and orders pages! Check plugin options to eventually change field positioning!
REQUIRED FIELD OPTION
Shop admin can also enable the required option. In this case on the shop page for all the products matching the upload field the Add to cart buttons are disable and replaced by a View button
that forces Customer to enter in product page.
In the product page if the field has been configured to be visible before the product is added to the cart, the plugin will try to hide the add to cart button (with some theme not 100% WooCommerce compliant this feature could not work). So the user is forced to upload files before he is able the item to the cart.
Furthermore, on Checkout page, if all not the required uploads have not been performed, the customer will not be able to place the order! The plugin will display a notice letting the Customer know which upload are missing.
In case you have configured the upload field to be showed after the product is added to the cart or if the item was in the cart and the user deletes a required upload, the plugin will try to deny the page leave showing a warning message until all the required files have not been uploaded! (NOTE: some browsers, for security reasons, may not permit this denial).
For a less aggressive requirement check, go to Options and in the Allow user to leave page in case of required field select Yes option. Doing so the user will be prompted only at first page leave with a warning message on the next try he will be able to normally leave the page.
FIELD VISIBILITY ACCORDING TO USER ROLE
Fields can be optionally be visible/unvisible according to the current user role!
FIELD VISIBILITY ACCORDING TO SELECTED PAYMENT METHOD
Fields can be optionally be visible/unvisible only if the order selected payment method is among the selected ones during the field configuration!
NOTE: This field is only available for fields displayed in Order details and Checkout pages.
FIELD POSITIONING
Using the Options menu you can choose where the upload fields have to be positioned in the Product, Cart and Checkout pages! (This is done using the standard WooCommerce hooks, NO custom positioning)
MULTIPLE FILES FOR SINGLE UPLOAD FIELD
By default for every field is possible to upload only a single file, but optionally WCUF gives also the possibility to upload multiple files using a single upload field. In this case is also possible to configure the maximum number of uploadable files and file size.
Once files are uploaded, WCUF will create a .zip file containing all the uploaded files.
Number of uploadable files for a single upload field can also be “bounded” to product quantity in cart or purchased (Option is not avaiable for Product page if the “show upload field before adding an item to the cart” option is enabled), in this way the customer cannot upload more than X files for a field (Where X is the quantity of the item purchased/in cart).
NOTE: Multiple files for single field upload feature requires the PHP feature “ZipArchive” commonly available in most web host services. If not active, this feature will be not available.
MULTIPLE FILES AND QUANTITY SELECTION
In case of multiple files upload for a single upload field, enabling the special option by going in Upload files Configurator -> Options menu and the selecting Yes option on the Enable quantity selection section,
For each uploaded file will be enabled an input box that will allow the customer to select a quantity value.
For example, a printing service that is selling a 100×100 print sercvice. A customer is buying 5 items of 100×100 print and he would like to print 3 copies for the first file and 2 for the second.
Thanks to the quantity option, he can set as quantity for the first uploaded file as 3 and 2 for the second!
CROP IMAGES BEFORE UPLOADING
The WCUF plugin embeds a crop image editor that allows your customers to crop an image before uploading it.
To enable the embedded editor, the shop admin has just to enable the option in the Image media file section in the
upload field configuration tool and set the Cropped image width and Cropped image height values. These values are the sizes that the image will have after cropping process.
EXTRA FEES/DISCOUNT PER UPLOAD WITH SPECIAL “SECONDS OVERCHARGE” FOR MEDIA FILES
WCUF allows to set extra fees for every unploaded file. It works also if the multiple files uploads for single field option has been enabled. The shop admin can choose to overcharge a fixed value or a percentage of the original price (like an additional 20% extra for every uploaded file).
Furthermore is possible to set also an “Overcharge limit” beyond which the customer will no be overcharged for additional uploads and set “Extra cost free” for the first N uploaded files (including quantity).
For audio/video files (most common extension) is also possible overcharge an extra cost per each second (the media file has to have well encoded ID3 info, otherwise the plugin cannot detect the needed info)!
For PDF is now possible to compute extra costs according to the number of pages of the uploaded files. The shop admin can also set how many free pages and the maximum number of extra chargeable pages.
NOTE: The PDF file must be a valid PDF econded file.
To apply a Discount for each uploaded file you have just to set a negative value in the extra cost value! In this way the plugin will apply a negative fee to the cart to apply the discount!
CUSTOMIZABLE BUTTON TEXTS (AND TRANSLATABLE VIA WPML)
Using the Text menu voice is possible to customize button texts used to upload, delete, crop, etc. files.
If your site is using WPML, you can set button texts for each language! You have only to switch language using the WPML language selector and then set texts!
WPML AND UPLOAD FIELDS TEXTS
Upload field titles, descriptions, disclaimer texts, etc. can be translated using the String translation WPML menu and selecting the woocommerce-files-upload-field-text domain!
RESPONSIVE FIELDS DISPLAY
Upload Fields in Cart, Checkout, Order and Shortcode pages are now responsive. They are grouped and displayed in row and row elements width can be setted via option menu. By default the plugin
displays one upload field per row.
SHORTCODES
Would you like to show the upload fields form only on a specific page? or maybe would you like to render the upload form in a custom area or in a text area during the checkout proces? Now you can!
WCUF plugin exposes the following shorctodes to be used according your needs:
- [wcuf_upload_form]: It will render an upload form with all the upload fields that match the products currently added to the cart in any area supporting shortcode system. It CANNOT be used in the Products, Cart or Checkout pages.
- [wcuf_product_page_upload_form]: It will render the Product page upload form in any area supporting shortcode system. It can be uses ONLY in the Product page.
- [wcuf_cart_page_upload_form]: It will render the Cart page upload form in any custom area supporting shortcode system. It can be uses ONLY in the Cart page.
- [wcuf_checkout_page_upload_form]: It will render the Checkout page upload form in any custom area supporting shortcode system. It can be uses ONLY in the Checkout page.
- [wcuf_upload_form_last_order]: It will render an upload form with all the upload fields that match the products bought in the last order for the currently logged user. It CANNOT be used in the Products, Cart or Checkout pages.
The special shorctode for Product, Cart and Checkout pages are useful if you want to show the upload fields in custom area like tabs or text field (both of them must support shortcodes system).
NOTE: In order to use [wcuf_product_page_upload_form], [wcuf_cart_page_upload_form] or [wcuf_checkout_page_upload_form] you must disable the standard upload field managment by going to Options -> Disable upload field standard managment and
select the pages in which you are using the shortcode.
My Account page and automatic upload fields display for last order
WCUF can optionally show upload fields for the last placed order directly from the My Account page! To enable this feature, you have to enable this display option from the Options general menu.
IMAGE/AUDIO PREVIEW
WCUF allows also to display an image preview (only for standard jpg/png compressed files) and audio preview (mp3/wav files) for the uploaded media files. to do that, you have to use the special shortcode [file_name_with_media_preview] in the “Text showed after the upload is completed” field during the upload field configuration.
UPLOADS SUMMARY FEATURE
From the Options menu is possible to allow the display of the uploaded files list in the Cart, Checkout and/or Order details page.
UPLOADS COUNTER
The plugin adds a new column “Upload counter” to the orders table. This will help you to easily track the number of uploads made by the users for each order.
CUSTOMER FEEDBACK TEXT AND DISCLAIMER
Optionally, the shop admin can enable feedback text to bi visible in product, cart, checkout and order details page upload fields and a “Disclaimer” checkbox with text that the user has to check before uploading.
UPLOADS PROGRESS BAR
Give some feedback to your users! During file upload on the order page will be displayed a progress bar.
BULK UPLOADS DELETE
Directly from Orders list, you can delete all the uploads for the selected orders.
KEEPS YOUR SERVER CLEAN
On order deletion, every upload is deleted too.
WooCommerce Upload Fields screenshots
PRODUCT PAGE UPLOAD
[file_name] and [additional_costs] shortcodes in action on “Already uploaded” textfield
Images preview after upload
SPECIAL QUANTITY OPTION EXAMPLE (IN CASE OF MULTIPLE FILES UPLOAD FOR SINGLE FIELD)
CHECKOUT NOTICE IF TRYING PLACING ORDER WITH REQUIRED UPLOADS
ORDER DETAIL PAGE UPLOAD
EXTRA FEE PER UPLOAD
FRONTEND PROGRESS BAR & DELETE FILE PROCESS
UPLOADS COUNTER
BULK UPLOADS DELETE
INPUT TEXT FIELD ON ORDER DETAILS PAGE
EMAIL NOTIFICATION
CONFIGURATION
CHANGE LOG
= 25.5 - 04.08.17 = * Fixed an issue due to the "custom fields" metabox was hidden = 25.4 - 29.07.17 = * Added option to customize the # id identifier for sold as individual items = 25.3 - 26.07.17 = * Fixed an issue that prevented to display a single upload field for all variation when the "sell as individual" option was enabled. = 25.2 - 21.07.17 = * Added new option to deny/allow upload field visibility to not logged users = 25.1 - 20.07.17 = * Added "auto upload" option for multiple files upload fields * Fixed an issue on Order details page: "Delete files" button appeared more than once = 25.0 - 18.07.17 = * Order details summary box is now displayed also on the "Thank you page" (the page displayed just after an order has been placed) = 24.9 - 17.07.17 = * Fixed an issue with WPML = 24.8 - 10.07.17 = * Fixed an issue due to a file was upload in two different fields = 24.7 - 04.07.17 = * Fixed warning about WC_Order_Item_Meta usage on WooCommerce 3.1 = 24.6 - 03.07.17 = * Added option to se minium file size and minium sum sizes = 24.5 - 30.06.17 = * Fixed an issue with WC 3.1 due to product names may be not properly showed = 24.4 - 30.06.17 = * Minor bugfix with ACF plugin = 24.3 - 26.06.17 = * Improved mime type detection function. On some installation it was not properly working. = 24.2 - 23.06.17 = * Fixed an issue that prevente the image preview to be showed when the "select quantity" input field is hidden = 24.1 - 21.06.17 = * Implemented chuck upload system that now allows the user to upload any file independently from its size = 24.0 - 17.06.17 = * Fixed an issue due to feedback text was disabled for multiple files fields = 23.9 - 15.06.17 = * Fixed an issue in Order details page and the detect pdf feature = 23.8 - 15.06.17 = * Fixed a minor issue on Fronted oder details page = 23.7 - 12.06.17 = * Fixed an issue with Edge Browser and multiple file upload feature = 23.6 - 09.06.17 = * Improved upload total progress bar percentage computation = 23.5 - 08.06.17 = * Fixed an issue that prevented to add additional file in case of multiple files field and unlimited uploads * Fixed an issue in the upload field configurator that in some cases assigned same id to two different upload field causin extra costs to not be properly computed (if activated) = 23.4 - 06.06.17 = * Improved upload file engine: now can be uploaded unlimited files, the plugin is not affected by the max_file_uploads php setting = 23.3 - 31.05.17 = * Fixed an issue that is some cases prevented the "Add to cart" button to appear when "required" option was enabled * Summary box elements are now displayed in-line = 23.2 - 29.05.17 = * Fixed an issue that prevented Feedback text to be properly inputted for single file upload field type = 23.1 - 23.05.17 = * Added incrmental upload feature: for multiple files upload fields, after some file have be uploaded, additional files can be uploaded until the max_files limit has not been reached = 23.0 - 19.05.17 = * Fixed the error message that sometime was showed on cart page * Fixed an issue that, in some installation, prevented to properly create the .zip file containing the uplaoded files (order admin page). = 22.9 - 16.05.17 = * Minor bugfix = 22.8 - 10.05.17 = * Small UI improvement = 22.7 - 07.05.17 = * Fixed an issue with extra cost feature that may prevent the checkout to be completed = 22.6 - 05.05.17 = * Now upload by payment method works also in checkout page = 22.5 - 27.04.17 = * Fixed an issue related to the plugin options init = 22.4 - 24.04.17 = * Added a new feature that allows field to be visible on Order details page only if the order payment method is among the selected ones durign the field configuration = 22.3 - 21.04.17 = * Fixed an issue related to WPML translation plugin = 22.2 - 19.04.17 = * Fixed an issue that prevented the uploaded files to be properly associated to the order in case the selected payment method failed = 22.1 - 18.04.17 = * Fixed an issue related to the WooThemes Measurement Price Calculator plugin = 22.0 - 12.04.17 = * Added option to assing "sell as individual" to all products = 21.9 - 04.04.17 = * Fixed an issue that prevent product filter to work when selecting a specific variation = 21.8 - 03.04.17 = * Free item value is properly applied when using the "Extra costs" feature = 21.7 - 23.03.17 = * Small UI improvement on the upload field configurator = 21.6 - 20.03.17 = * Fixed an issue that prevented the item name to be properly showed on the order items table (frontend) = 21.5 - 04.03.17 = * Fixed an issue for the "sold as individual" product feature = 21.4 - 28.02.17 = * Added new Extra costs option: it is now possible to multiply the fee for the actual product quantity (only for upload field bounded to products) * Added the new "Individual products": It is now possible to enable to assign the "Sold as individual" status to products in order to add multiple times the same product to cart with different quantities. = 21.3 - 23.02.17 = * Added support to upcoming WooCommerce 2.7 = 21.2 - 22.02.17 = * Added support to upcoming WooCommerce 2.7 = 21.1 - 16.02.17 = * Minor bugfix * Added Estonian language file = 21.0 - 08.02.17 = * Updated DropBox library * Fixed an issue related to "required" option and number of uploaded files depending on quantity = 20.9 - 06.02.17 = * Added option to select if min/man width and height image sizes are related in AND or OR condition = 20.8 - 02.02.17 = * Improved upload field showed before adding a product to the cart managment on product page = 20.7 - 30.01.17 = * Fixed an issue with required upload showed only on Order details page. The user was not able to complete the checkout = 20.6 - 24.01.17 = * Fixed an issue related to the min/max uploadable files for upload fields not related to products * <BETA> The plugin can now be activated in multisite wordpress installations = 20.5 - 19.01.17 = * Improved checkout check for required fields not bouded to any prodict * Added quantity min/max Cart and Checkout pages warning in case the user uploaded the wrong number of files (due to cart quantity update) = 20.4 - 17.01.17 = * Upload fields associated to variations are now visible in the product page if "show before the product has been added to cart" has been selected = 20.3 - 13.01.17 = * Minor bugfix = 20.2 - 10.01.17 = * Added new positionin option on Checkout page = 20.1 - 08.01.17 = * Typo on required message displayed on Checkout page = 20.0 - 04.01.17 = * Added option to adjust clear temp uploaded files time interval = 19.9 - 26.12.16 = * For multiple files upload field, added option to consider as max uplodable files the sum of the setted quantities = 19.8 - 23.12.16 = * Bugfix * Quantity is now reported in the admin notifications email = 19.7 - 20.12.16 = * Improved "add to cart" button managment on shop page (thanks for eCollect for the suggestion) = 19.6 - 16.12.16 = * In case upload fields are bounded to products, files will be stored in a sub-folder "product_id-variation_id" = 19.5 - 12.12.16 = * Fixed an issue that prevent the file to be uploaded if the post_max_size was more than 1G * Fixed an issue that may prevent the checkout to be completed when multiple files upload per field option was enabled = 19.4 - 10.12.16 = * Fixed an issue that prevented the product filter policy "disable for select product(s) and categories" to properly work. = 19.3 - 01.12.16 = * Added option to set negative extra costs. In this way you can apply discount for each uploaded file. = 19.2 - 28.11.16 = * Bugfix on checkout. If the user has not uploaded the exact number of file according to the min/max required field, now the plugin shows a warning * Added the PDF extra cost option: the plugin now allows to compute extra costs according to the number of pages of the uploaded pdf = 19.1 - 25.11.16 = * Minor bugfix on the crop rotation image feature * Added new info box on the upload field configurator. It helps to better keep track for which categories/product the field has been enabled/disabled = 19.0 - 23.11.16 = * Improved memory usage for image preview = 18.9 - 21.11.16 = * Added option to display a message when the add to cart is hidden (required uploads) * Is now possible to set "free seconds" for media uploads (in case of exra costs) = 18.8 - 18.11.16 = * Bugfix on upoad field configurator that prevented the "collapse options" button to properly work after creating a field [...]