1. Home
  2. Knowledge Base
  3. WooCommerce Product Add-Ons Ultimate
  4. Advanced Topics for Add-Ons Ultimate
  5. Files and Uploads
  6. Filter file types

Filter file types

If you’re using the file upload field type in Add-Ons Ultimate, you can change the permitted file types by updating the ‘File types’ setting in WooCommerce > Settings > Product Add-Ons > Uploads. See this article for all settings available for upload fields.

Please remember that allowing users to upload files to your server carries a security risk, so please use this feature with caution.

If you want to upload files types that aren’t already supported by WordPress, you can filter upload_mimes:

<?php
function my_prefix_upload_mimes( $mimes ) {
// Add PhotoShop PSD files to list of permitted WordPress mime types
$mimes['psd'] = "application/x-photoshop";
return $mimes;
}
add_filter( 'upload_mimes', 'my_prefix_upload_mimes' );

Here’s a list of several file types, including PSD, AI, EPS, etc:

<?php
/**
*
*/
function new_prefix_pewc_get_permitted_mimes( $permitted_mimes ) {
$permitted_mimes['pdf'] = "application/pdf";
$permitted_mimes['svg'] = 'image/svg+xml'; //Adding svg extension
$permitted_mimes['eps'] = 'image/x-eps'; //Adding photoshop files
$permitted_mimes['ai'] = 'application/postscript'; //Adding photoshop files
$permitted_mimes['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
$permitted_mimes['xd'] = 'application/zip'; //Adding photoshop files
$permitted_mimes['ps'] = 'application/postscript'; //Adding photoshop files
$permitted_mimes['xls'] = 'application/vnd.ms-excel'; // excel file
$permitted_mimes['xlsx'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml'; // excel file
$permitted_mimes['csv'] = 'text/csv'; // csv file
return $permitted_mimes;
}
add_filter( 'pewc_permitted_mimes', 'new_prefix_pewc_get_permitted_mimes' );
function new_prefix_mime_types($mime_types){
$mime_types['svg'] = 'image/svg+xml'; //Adding svg extension
$mime_types['eps'] = 'image/x-eps'; //Adding photoshop files
$mime_types['ai'] = 'application/postscript'; //Adding photoshop files
$mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
$mime_types['xd'] = 'application/zip'; //Adding photoshop files
$mime_types['ps'] = 'application/postscript'; //Adding photoshop files
$mime_types['xls'] = 'application/vnd.ms-excel'; // excel file
$mime_types['xlsx'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml'; // excel file
$mime_types['csv'] = 'text/csv'; // csv file
return $mime_types;
}
add_filter('upload_mimes', 'new_prefix_mime_types', 1, 1 );
/**********************************************************
* Additionally, you can install the free plugin, WP Extra File Types:
* https://en-gb.wordpress.org/plugins/wp-extra-file-types/
* And enable various file types as required
**********************************************************/
view raw mime_types.php hosted with ❤ by GitHub

Additionally, you can install the free plugin, WP Extra File Types, and enable various file types as required.

Was this article helpful?

Related Articles