How to Change the WordPress Media Upload Directory
One thing I've always missed about the "old" way of web development was the simplicity of FTP. No deploy scripts, no fuss: simple drag and drop of files and the files are there. I've used FTP for assets on this blog for over a decade but I'm finally ready to be lazy enough to want to drag images into WordPress and use them as WordPress intended.
The problem is that I want the files to upload to custom directory, not the wp-content/uploads directory that WordPress defaults to.  The following PHP snippet in the WordPress wp-config.php file allows you to change WordPress' default upload directory:
require_once(ABSPATH.'wp-settings.php');
define('UPLOADS', 'my-demo');
Files uploaded within the WordPress / browser interface will be added in this custom directory.  Note that WordPress will create the directory if not present, and will also automatically create and upload the file to a {year}/{month} directory within that custom directory.
I wish I had set this configuration years ago. Having to open a separate app and then write the custom HTML to insert this image has been an inconvenience for a long time!





If you don’t want to mess with the config file, you might be able to use wordpress’s secret hidden settings page to do this: https://your-site.com/wp-admin/options.php