Plugin and Theme Compatibility
Infinite Uploads is the most widely compatible cloud storage plugin due to the unique way it maps the uploads directory to the cloud. Competitor plugins rely on WP hooks so if a plugin or theme processes uploads differently than the normal media library functions, they don't work, or they have to build specific workarounds for every plugin, that are often sold as premium add-ons.
Infinite uploads instead uses an advance feature of PHP called stream wrappers. Our plugin essentially filters the uploads directory path as returned by WordPress core (via the wp_upload_dir function) to change the filesystem path from something like /home/site/public/wp-content/uploads with a stream path like iu://cloudbucketpath. That way when your plugins or theme use any PHP filesystem functions (such as fopen(), fread() etc.), PHP knows to use our custom stream wrapper to make those modifications directly in our cloud storage, bypassing the local filesystem completely. This is compatible with the majority of filesystem actions, though it is possible in rare cases a plugin may need to do some kind of advanced filesystem action that is not compatible with stream wrappers.
This is the magic of Infinite Uploads, 99% of the time it just works with your plugins with no effort at all!
Infinite Uploads has been tested with many plugins such as:
But even if not in this list it is extremely likely your plugins are compatible! Feel free to signup for a free trial to test it out, and let us know if you have any problems and we will address them.
Note about Downloadable/Digital Products
Due to the nature of cloud storage, just like normal WordPress core all uploaded files are publicly accessible if the url is known. Many eCommerce plugins may try to prevent direct access to downloadable product using a method like .htaccess files or nginx config rules. Those protection methods will not work with Infinite Uploads as the files do not exist in the WordPress uploads directory. However, almost all of the plugins like EDD, WooCommerce, and WordPress Download Manager understand those methods are not always possible on everyone's hosting, so they use various backup methods that are compatible with Infinite Uploads cloud storage. These can have different names like:
- Randomized/unique/obfuscated file names/paths - As Infinite Uploads does not allow listing of files, this is enough protection in most cases as the url is unguessable in our cloud storage. The downside is that customers may be able to share the download url with others, though plugins will often make that harder using protected redirects or PHP protection. You should turn this option on if its not by default.
- PHP Protection/Force Downloads - This method is common and uses PHP to read the file from the filesystem and stream it to the customer. This works just fine with Infinite Uploads and combined with random filenames is excellent protection. The only downside is it may not work well with very large files as that can cause PHP timeouts or out of memory errors.
- X-Accel-Redirect/X-Sendfile/X-LiteSpeed-Location - This is generally not supported by Infinite Uploads as they don't work out of the box with remote urls. However if this is needed please ask and we can create some custom configuration code that uses a proxy to support remote file urls.
In short, unless you are selling nuclear launch codes, Infinite Uploads is a great solution for selling downloadable products. You can upload millions of product files of any size without worrying about running out of hosting storage, and improve download speeds by serving them via our global CDN.
Infinite Uploads even works great with streaming video as it supports Range requests so video players only download what they need to and support fast-forward, etc.