Installation

  1. Brand sure WooCommerce is installed.
  2. Download the .cypher file.
  3. Upload the unabridged 'woocommerce-uploads' directory into the '/wp-content/plugins/' directory.
  4. Actuate the plugin through the 'Plugins' menu in WordPress.
  5. Configure the plugin by going to WooCommerce -> Uploads (see 'Getting started' on this folio for more information).
  6. Enter the license key for this plugin in our WP Fortune plugin to become support and updates.

Getting started

mini_screen1

Before you lot start using WooCommerce Uploads, it is important a few settings are set up correctly. Y'all tin can notice the WooCommerce settings folio  by clicking on (or hovering over)'WooCommerce' in the WordPress admin console and click on 'Uploads'. You will now come across the settings folio where you can configure the plugin to your needs.

Check your upload path

By default the upload path is specified by the plugin, this can be changed if you desire to store your uploads in some other directory. It'due south important yous check (and change if needed) the upload path before you lot let customers upload files. This setting can be found under 'General settings'. Although the plugin would still work properly, it is not recommended to change the upload path in one case customers have uploaded files. The alter is not backwards uniform, i.e. already uploaded files are not moved to the new directory.

Enable upload for current products

If yous already have products in your webshop and you desire to let customers upload files for those products, you lot can utilise the 'Enable upload for all current products' button (under 'General settings'). WooCommerce Uploads volition perform a cheque on all products and, if no upload settings were institute for a production, automatically enables upload and adhere the default upload set to it. mini_screen2 Please bank check your default upload ready carefully, since this activeness cannot be undone. If y'all fabricated a mistake in your default upload set, a typo in your title for example, you volition accept to manually alter the title subsequently in the upload fix for each product. See 'Create a default upload ready' for more information.

Create a default upload set

mini_screen3

A default upload set is a set of upload boxes which will be used in two cases:

  • When you click on 'Enable upload for all electric current products' – All current products in your webshop will have the default upload set at present.
  • When you add a new product to your webshop and the 'Default upload' setting is enabled. The newly added production volition have the default upload set. (You tin fully customize this upload set on product level anytime).

For more information about creating an upload set, see 'Create an upload prepare' in the 'Upload sets' section.

Settings

Uploader

  • Uploader type – AJAX supports larger files because it volition split upwardly the files (this is the recommended setting). Choose HTML if you accept any trouble using the AJAX uploader. If y'all choose the HTML uploader, please continue in mind that all uploads combined cannot exceed your PHP max_upload_size setting (ordinarily 8MB).
  • Evidence dropzone – AJAX only. Shows a zone where customers tin can elevate and driblet their files into.
  • Max. chunk size – AJAX but. Large files will exist splitted up into multiple, smaller parts (chunks). When the upload is finished, the parts volition be combined together again to create one file. Don't prepare this value higher than your PHP max_upload_size setting (usually 8MB).

Full general settings

  • Default upload – When y'all add a new product to your webshop, this product will take uploads enabled by default. The default upload ready will be used here.
  • Enable upload all products – Click this button if you want to enable uploads for all current products in your webshop. See 'Enable upload for current products' in the 'Getting started' department for more than information.
  • Styling – We've created some default stylings for the upload boxes which will be visible for the customer. Check this choice if you would like to make use of this. Disable this selection if you desire to use your own styling.
  • Order tracking page – Select the order tracking page. We need this information to create a correct url in the email the client receives after their guild is placed.
  • Position – You can choose where yous desire to show the upload boxes. This tin exist earlier the society details or after the order details on the order item page.
  • Thank you page – Directly subsequently checkout, the customer will exist redirected to a 'thank you' page. If you want to evidence the upload boxes on this folio, check this option.
  • Upload path – The absolute path to the directory where all the uploads will be stored. For each order id / number, a subdirectory will be created in this directory. In this subdirectory, the uploads will be stored.
  • Upload process – If a client orders multiple items of a single production yous can cull whether yous want to let them upload files for each item or upload files for all items at one time. For example: If someone orders v t-shirts (the same product), you can let the customer upload a film five times (each particular get information technology's own film) or let the customer upload ane flick (all five items get the same picture).
  • Order numbering – By default the order ID will be used to create a subdirectory where the uploads will be stored. If you are running a plugin which will let you choose your own society numbers for WooCommerce, you tin can set this selection to 'Order number'. This custom order number will and then be used as the subdirectory.
  • Customer delete – If y'all want to give the customers the ability to delete their uploaded files. Files can only be deleted when a file is declined or is awaiting blessing of the shop manager. One time a file is approved customers tin can't delete files anymore.
  • Required status(es) – The status(es) an order needs to be to let a customer upload files. If an order doesn't have the status you divers here, no upload boxes will be shown.
  • Dynamic variation back up – If you're using a plugin which let's customers customize your product (such as WooCommerce (Gravity Forms) Product Add-ons, Woo Tabular array Based Pricing etc.), delight enable this option. Default this setting is enabled. Only keep this setting disabled if you lot've had a version below i.1.3 installed.

Preview thumbnail settings

  • Preview thumbnails – If yous desire to generate thumbnails for uploaded files which will be shown to the customer. If you have the GD library installed on your server, jpg, gif and png files are supported. If you have Imagick installed the plugin tin also create thumbnails of psd, pdf, ai and eps files.
  • Preview thumbnail size – The width and height of the generated thumbnails. Sizes must be given in pixels.
  • Crop thumbnails – If you lot want to permit thumbnails crop to the sizes, given in the 'Preview thumbnail size' setting. If disabled, thumbnails may await stretched.
  • Thumbnail quality – The quality of the generated thumbnails. The higher the quality, the bigger the filesize of the thumbnails will exist.

Default upload set

For more than data most creating an upload set, see the 'Create an upload set' section.

Custom messages

mini_screen4

  • Custom messages – If you want to write your own messages which will be shown to the client subsequently a file has been uploaded, check this option.
  • Not checked – This is the message a client will run across directly later on a file is uploaded. Default: 'Your file will exist manually verified.'
  • Declined files – The message the client will see when the store manager declines a file. Default: 'Nosotros accept found a problem with this file. Please upload a new file.'
  • Accepted files – The message the customer volition see when the shop director accepts a file. Default: 'Your file is approved.'
  • Upload description – A short clarification that will be shown to the customer. This is a general description that will be shown above all the upload boxes.

Customer notifications

When customers have finished their order, they will receive an email containing the society confirmation. If this club contains 1 or more products with uploads enabled, an extra link can be added to this e-post. The settings beneath are applied to this.

  • Link to client e-mail – Cull to which page yous desire to link to in the e-mail. This tin can be the order detail page (which requires an business relationship), the lodge tracking page (which doesn't require an business relationship) or no link, if you want to disable this.
  • E-mail text customer east-postal service – The text which will be used as the link text, will be sent to the customer in the e-mail. You can set up a singular sentence (when only a unmarried file can be uploaded) or a plural sentence (when multiple files can be uploaded).

Admin notifications

  • Admin notifications – If y'all want to receive notifications when a customer changes, deletes or uploads a file. You won't receive an eastward-post anytime a client makes a alter in his/her club, simply you will get an overview with changed orders once in a while (see the Recurrence setting).
  • Recurrence – How many times you want to receive an e-mail.
  • Recipients – The recipients of this email. You tin can add multiple e-mails in here, seperated past a comma.

Upload sets

An upload fix is but a collection of 'upload boxes'. Each product has 1 upload set which can comprise, in theory, an unlimited amount of upload boxes. Each upload box represents 1 kind of upload and has it's own settings.

Example:
You lot sell t-shirts on your website and you want to let customers upload their ain images for the front- and behind of a t-shirt. For the frontside you need a small logo on the upper left side, and a bigger picture on the middle of this t-shirt. For the behind you need just one moving picture.

You tin now create 2 upload boxes for this production:

  • Frontside – With a maximum number of uploads ofii.
  • Backside – With a maximum number of uploads of1.

Create an upload set:

In that location are ii kind of upload sets; a 'default upload set' (meet 'Create a default set' in the 'Getting started' section for a more detailed explanation) and an upload assault production level. You tin can create a default upload attack the plugin setting page and an upload set on product level on the product edit page of WooCommerce in the WordPress admin console (the plugin adds an 'Uploads' section here). The way y'all create / customize an upload set is exactly the aforementioned for both ways.

mini_screen5

Instance of one upload prepare, containing two upload boxes

Add a new upload box

Click on the green 'Add new upload box' button to add a new upload box to your upload set. A new box will appear which y'all can customize to your needs.

Delete an upload box

Click on the red 'Delete' push if you want to remove an upload box.

Rearrange upload boxes

Click somewhere in the grey expanse of an upload box when the 'movement' cursor appears. You tin can now drag the upload box to a new position. The positions of the upload boxes you run across here, will also be visible to the client in this lodge.

Warning:It is strongly recommended not to change the positions of the boxes once you take saved it (yous tin notwithstanding add, delete or change settings without whatsoever impairment). If a client uploads a file, it will be attached to the position of the box, so the plugin knows which upload belongs to which upload box. This warning only applies for editing upload boxes on product level.

Upload box settings

You can change the upload settings for each upload box by clicking on the 'More than settings' push.

  • Upload title – A very brief clarification of the upload box (one give-and-take is enough)
  • Upload clarification – A brusque description of what the uploads are for
  • Number of uploads – The maximum corporeality of uploads for this upload box
  • (Dis)Allowed file types – The allowed or disallowed file types. You tin make full in file extensions, seperated by a comma. Due to security reasons, it'southward not recommended to use 'disallow' hither.
  • Max. upload size – The maximum upload size foreach upload (see 'Number of uploads').
  • Min. resolution – If the uploaded file is an image, you tin can specify the minium width and/or acme the image needs to be.
  • Max. resolution – If the uploaded file is an image, you can specify the maximum width and/or pinnacle the image needs to be.
  • Show for variations – This setting is ONLY visible on the product page and when the product is a variable production. Here you lot tin choose if you just desire to show the upload box for specific variations of the product.

Ofttimes asked questions (FAQ)

Is WooCommerce Uploads compatible with the old WooCommerce Upload My File plugin?

Yes, if you have the WooCommerce Upload My File plugin installed, WooCommerce Uploads will bank check for one-time settings and try to restore them. If customers already uploaded files with the Upload My File plugin, it will also attempt to restore them, so they appear correctly on the WooCommerce lodge detail page in the WordPress admin panel.

I already take products in my webshop, can I activate uploads for those products?

Yes, run into our documentation how to enable uploads for current products in your webshop.

Where tin can I change the plugin settings?

You can change the plugin settings by clicking (or hovering over) the WooCommerce button in the WordPress admin panel and selecting 'Uploads' from the submenu.

What is an upload ready?

An upload prepare is simply a collection of 'upload boxes'. Each product has one upload set up which, in theory, tin can contain an unlimited amount of upload boxes.

What is an upload box?

An upload box represents one kind of upload and has it'south own settings. Run across our documentation for more information about how to configure your own upload boxes.

How many upload boxes can I add?

As many as you want, there is no limit.

Where can I enable / customize uploads per production?

If yous want to customize your uploads per product, you can simply go to the products overview folio in the WordPress admin console, click the product for which you want to customize uploads and search for the 'Uploads' section. Here yous tin enable uploads and / or customize your upload boxes.

What if my client orders multiple items of the same product?

On the WooCommerce Uploads settings page in the WordPress admin panel, yous tin choose the upload procedure for uploads when a customer orders multiple items of the aforementioned product. See our documentation how you can practice this.

Can I modify the directory where my uploads are stored?

Yes, you modify the upload path under 'Full general settings' on the plugin settings folio.

Why is my file not uploading?

This can be a lot of things. The file may exist uploaded, but don't show up. Or the file is not uploaded at all. So please get through the checklist below if y'all (or your client) have whatever issues with uploading files:

  • Practice y'all see any errors?
  • Is your upload path set up correctly?
  • Is your upload path writable past the server? (755 are the recommended permissions, on some servers 777 is needed)
  • Is your file actually uploaded in the directory y'all've filled in in the 'upload path' setting? (you can check this with a FTP program)
  • If you use the AJAX uploader, does the 'Max. clamper size' exceeds the PHP max_upload_size limit? (normally 8MB)
  • If you use the AJAX uploader, does irresolute the uploader type to 'HTML' solves the problem?
  • If you utilise the HTML uploader, does the 'Max. upload size' of all upload boxes combined exceeds the PHP max_upload_size limit? (usually 8MB)
  • If yous refresh the page where yous have uploaded the file, is the file still non visible?
  • What happens when you employ another browser?

If you use the AJAX uploader, the progress bar should plow green when a file is successfully uploaded or reddish when an mistake occurs. If, for some reason, the progress bar does not piece of work or you have whatever other strange problems with the AJAX uploader, please effort to clear your browser cache completely (you can check your browsers website how to exercise this).

Where can I accept / decline files a customer uploaded?

You can take / turn down files past going to the relevant order in the WordPress admin console. On your right you will find a section 'Uploaded files'. Here you can bulk have / turn down files for this order.

Where will the upload boxes announced?

Y'all can find the upload boxes on the 'Thank you page' and/or the gild detail folio. The 'Thanks page' is the page you will encounter directly after checkout. You lot can find the lodge detail page past clicking on 'My account'. You lot will see an 'Upload' button here. By clicking on 'Upload', yous volition be redirected to the guild detail page.

Why don't I see the upload fields on the order item page?

If the upload doesn't show upwards on the club detail page, please check the 'Required status(es)' on the plugin settings page under 'Full general settings'. Also cheque if uploads are enabled for the ordered products.

Why don't I run across the upload fields on the give thanks you page?

To enable uploads on the thank you page, yous have to check the 'Show on thanks folio' option on the plugin settings folio under 'General settings'. If the upload boxes still don't show up, please bank check the 'Required status(es)' on the settings page nether 'General settings'. Also cheque if uploads are enabled for the ordered products.

What type of files are supported for the uploads?

Any files you lot want. You can allow or disallow certain filetypes per upload box.

How can I alter the order of the upload boxes?

You can click in the greyness area of an upload box and elevate the box upward or downward to change the order of an upload box. Information technology is strongly recommended non to modify the positions of the boxes anymore one time you accept saved it (this does not apply on the default upload prepare).

Can I add my own description for the uploads?

Yes, for each upload box y'all can add together your own description. See our documentation for more information about how to configure your own upload boxes.

Can my customer delete an uploaded file?

Yes, customers can delete their own files until they are reviewed past the shop director or when a file is rejected. If you lot don't want to utilize this option, you tin turn it off on the plugin settings page nether 'General settings'. If yous turn this selection off, customers can only upload files, but can never delete it.

Can I also let my customer upload files before checkout?

Yes, y'all can with our WooCommerce Uploads Before Add-On.

Can I receive an email when a customer uploads / deletes a file?

Yes, y'all tin can enable admin notifications. You tin can do this by clicking on 'Messages & Notifications' tab on the plugin settings page. Under 'Admin notifications' you can enable the admin notifications. When you lot enable this setting, you will receive an email every day, every hr or twice a day (y'all tin set this yourself) with an overview of orders where uploads have been changed.

Can I let customers upload multiple files for a single product?

Aye, you tin can create an unlimited amount of upload boxes for each production. See our documentation for more information almost how to configure your own upload boxes.

What blazon of files are supported for thumbnail creation?

This depends on your server settings. If the GD library is installed on your server (which is usually the instance) you can create thumbnails of jpg, gif and png files. If you also have Imagick installed, psd, pdf, ai and eps files are supported as well. The plugin will automatically check your server settings and e'er endeavor to employ Imagick. If Imagick is not found, information technology will switch to GD.

How do I change the size of the generated thumbnails?

You can set your ain thumbnail sizes on the plugin settings page under 'Preview thumbnail settings'. If 'Preview thumbnails' is enabled, you will see the pick to configure the tiptop and width of the thumbnails to your needs.

Can I translate WooCommerce Uploads?

Aye, WooCommerce Uploads is fully supported by the WordPress translation service so you can always have the plugin in your own language if there are language files bachelor for this plugin. Of course yous tin can always write your own translation files.

Tin I change my uploadbox settings for all products at in one case?

Yes, nosotros have created a gratis add-on which allows you to modify some settings (similar the maximum uploads amount, immune filetypes etc.) for all of your upload boxes for all products for which uploads are enabled. You can download this add-on here. Later activating this plugin, you volition see an extra tab on the WooCommerce Uploads settings folio.

I tin't change my upload path, why is this?

For security reasons, you can't enter an upload path which is outside your root directory (the directory where your WordPress install is located). If you actually want to disable this cheque, you tin add the following code to your theme'southward functions.php:

function wpf_uploads_path_check_disable() {     render true; }

Can I preserve the filename of the uploaded file?

By default files are stored with a different name than the original filename, and then the plugin all the same knows to which order, which product and which upload box a file belongs to in case something goes wrong. If yous want to have the original filename in the uploaded file, you tin add the following lawmaking to your theme'southward functions.php:

function wpf_uploads_preserve_filename() {     return true; }

This way, the original filename will exist appended to the 'new' filename.

Can I bear witness upload boxes but for specific product variations?

Yes, when the product is a variable product, an extra selection 'Bear witness for variations' will appear for each upload box. Here you lot tin choose if you want to show the upload box for all variations or only for i or more specific variations.

How tin I enable file uploads for any file type?

If you actually want to let your customer upload files of whatsoever file type, you lot can just fill in '*' (without the quotes) in the '(Dis)allowed filetypes' setting for a single upload box. You lot can set up the dropdown either to 'Allow' or 'Disallow'.

Warning: information technology is not recommended to use this, since people can upload malicious files to your server.

Tin my customer download an uploaded file?

Yes, if you want to permit your customers download their own uploaded files, yous can enable this on the plugin settings page. Your customer then tin can dowload their files by clicking on the file name one time a file is uploaded.

What does the 'Dynamic variation support' setting hateful?

Since version i.1.3 we have added support for plugins that let customers to customize products by adding their own options to it. We named this 'Dynamic variations' in our WooCommerce Uploads plugin. We strongly recommend to go on this setting enabled at all times (even if yous don't employ dynamic variations). If yous have e'er had a version of the plugin below 1.i.3 installed , nosotros recommend to keep this setting disabled. Considering with this setting enabled, uploads are stored differently, but we have created this setting to brand it compatible for users who had a previous version installed.

Some plugins this works for:

  • WooCommerce Production Add-ons
  • WooCommerce Gravity Forms Production Add-ons
  • WooCommerce Measurement Cost Calculator
  • Woo Table Based Pricing
  • etc.

I only see one upload box, fifty-fifty if I accept multiple items of the same product in my guild / cart, how can I fix this?

Make sure yous have the latest version of WooCommerce Uploads and make sure you accept the 'Dynamic variation support' setting enabled.

I'm getting a 200 HTTP error when uploading a file, how can I set this?

The 200 http fault is a general error, which appears when an unknown mistake occurs during uploading. Ordinarily this mistake is caused by the thumbnail cosmos of larger files. Because our plugin uses the aforementioned functionality for creating thumbnails as the default WordPress media uploader does, you tin hands test this by uploading an paradigm, which fails in our plugin, through the default media library from WordPress. If this likewise throws a HTTP fault, the problem is probably server-related. If you get this error, effort to disable thumbnail creation on the WooCommerce Uploads settings folio.

Programmer notes

Styling

Past default WooCommerce Uploads adds some default styling so it makes the plugin completely gear up-to-use. We used simple grey-scaled colors, and then it fits easily into nearly any theme. Of class you can create your own styling if you want. To practise this, we recommend to disable the 'Styling' setting on the 'General settings' page of the plugin and and so use our stylesheet as a base for your own. You can observe our stylesheet in '/assets/css/style.css' in the plugin directory.

If a customer uploads a file, the uploaded file volition be visible to the customer. Each uploaded file has a <div> which contains a course with the extension of the uploaded file and the condition of information technology and then you tin can add together your own styling depending on the extension and/or status of the uploaded file. For instance:

              <div class="wpf-umf-single-uploaded-file jpg declined">            

The status classes can be: canonical, declined or on-hold.

Hook into procedure after upload

Developers can brand use of our hook to claw into the process after a unmarried file has been uploaded. This claw is only called when a file is succesfully uploaded.

We will explicate how you tin can use this claw and which parameters you can use.

You can place the following code in your functions.php (or a plugin, or anywhere else you desire to identify this):

add_action('wpf_upload_complete', 'wpf_upload_complete_callback', 10, 4);  role wpf_upload_complete_callback($order_id, $product_id, $file_path, $mode) {     // Your code here  }            

$order_id = The guild id, this is empty if the upload is done earlier checkout.
$product_id = The id of the production (or variation) where the upload is attached to.
$file_path = The absolute file path to the file.
$manner = Either 'before' or 'afterward', depending whether the upload is done before or afterward checkout.

Add custom HTML after upload boxes

If you want to add together custom HTML after the upload boxes, you can utilize our 'wpf_umf_after_upload_boxes' hook. You lot can use this hook to display a 'Go to cart' push directly after the upload boxes, a short description or any other HTML y'all want. The instance below shows a 'Go to cart' button, just when the uploads are before checkout (the WooCommerce Uploads Before Add-on is needed for this).

add_action('wpf_umf_after_upload_boxes', 'wpf_umf_after_upload_boxes', 10, 1);  function wpf_umf_after_upload_boxes($upload_mode) {      if ($upload_mode == 'before') {         echo '<a course="button" href="/hc/admin/articles/'.wc_get_cart_url().'">'.__('Go to cart').'</a>';      } else {         // Hither something if uploads are afterwards checkout     }  }            

How to solve issues with W3 Total Cache plugin

If yous're using the W3 Full Cache plugin, you could experience some problems with the AJAX uploader in WooCommerce Uploads when you enable JS minifying in the W3 Total Cache plugin. If JS minifying is enabled, the 'Select files' and 'Start upload' might not work correctly.

To solve this, follow the adjacent steps:

Step one:

Go to 'Operation' in the WordPress admin menu. Now click on 'Minify' in the submenu.

Step ii:

Observe the 'Never minify the following JS files' setting.

Step 3:

screenshot total cache

Add the next 2 lines to information technology:

wp-includes/js/jquery/jquery.js
wp-includes/js/plupload/plupload.full.min.js

Step 4:

Click 'Save all settings' to save the settings. You're done!

Now get the upload folio and hitting CTRL + F5 (on Windows) to practice a 'hard' refresh or clear your browsers cache. At present try to upload again.

Irresolute the filename of uploaded files

By default files are stored with a different name than the original filename, and then the plugin still knows to which order, which product and which upload box a file belongs to in case something goes wrong. If y'all want to make changes to the filename, y'all can utilize our built-in filter:

The instance beneath shows how this filter is used to modify the filename to the sku of a production.

$filename = The default filename (including extension)
$original = The original filename (including extension), this is the filename the customer who uploaded the file has named the file
$extension = The extension of the file, for case: 'jpg'
$product_id = The product this upload is fastened to. In case of a variable product, this is the variation ID.
$order_id = The order ID, the files are uploaded to.

Add the post-obit lawmaking to your theme functions.php or in a custom plugin.

add_filter('wpf_umf_filename', role($filename, $original, $extension, $product_id, $order_id) {      $product = new WC_Product($product_id);      render $product->get_sku().'.'.$extension;  }, 10, 5);            

Alert: If a client can upload multiple files, be careful each file is unique. Otherwise files can be overwritten!

Nosotros do not give back up for custom code, withal if you lot demand us to write us the code please ask us for a quote.

Make your uploads more than secure

Uploads are stored in folders nether wp-content/uploads and are saved with a different name. This makes information technology hard to find them, however, some hosts enable directory listing which allows people to browse your file and folder structure. To disabledirectory listing you can easily add together the following to your main .htaccess file:

              Options -Indexes            

Add column with number of uploaded files

In guild overview you can add an actress column with information about the number of uploaded files.

This can be done with a modest slice of code which you lot can add together to your theme functions.php or in a custom plugin.

The following lawmaking is simply an example, then test it first on a development surroundings.

/***********************************************************  * Add together cavalcade called "Files" to society overview page  ***********************************************************/ add_filter('manage_edit-shop_order_columns', 'show_product_order', xv);  function show_product_order($columns) {     $new_columns = (is_array($columns)) ? $columns : assortment();     $new_columns['files'] = __('Files'); return $new_columns; }  /***********************************************************  * Count number of uploaded files and add it to "Files" cavalcade  ***********************************************************/ add_action('manage_shop_order_posts_custom_column','wpf_custom_shop_order_column',10, 2);  function wpf_custom_shop_order_column($column) {      global $the_order;      // If is "Files" column...     switch ($cavalcade) {         case 'files' :             // All upload information is stored inside gild meta data             $uploaded_files=get_post_meta($the_order->get_id(),'_wpf_umf_uploads');              // Set starting of files to 0             $files=0;              // Nosotros loop through all arrays to count the number of files             foreach ($uploaded_files as $products) {                 foreach ($products as $product) {                     foreach ($product equally $upload_boxes) {                         foreach($upload_boxes as $box) {                             foreach ($box equally $file) {                                 // Count the number of files                                 $files++;                             }                         }                     }                 }             }             // Outputs the number of files to the cavalcade            printf( esc_html( _n( '%d File.', '%d Files', $files, 'woocommerce' ) ), $files );        break;     } }            

Change variation separator in society label productlist

The following code is just an example, and then exam it first on a development surroundings.
Use the following code to ready each variation to its own line.

/*********************************************************** add_filter('wc_dymo_product_list_variation_separator','prefix_list_separator'); function prefix_list_separator() {  render '|'; }