/**
* Completely randomize the filename of the upload.
*
* Change the variable $hash_len based on the random
* string length desired. Example creates a random
* string 36 characters long.
*/
add_filter( 'sanitize_file_name', function( $filename ) {
// How long a random string do we want?
$hash_len = 36;
// Get the file extension.
$ext = pathinfo( $filename, PATHINFO_EXTENSION );
if ( preg_match( '/^[a-f0-9]{'. $hash_len . '}-.*/', $filename ) ) {
$filename = substr( $filename, $hash_len + 1 );
}
$key = sha1( random_bytes(32) );
$key = substr( $key, 0, $hash_len );
return "$key.$ext";
}, 10 );Not sure what to do with this code?
You're not a "coder" and don't know what to do? Don't worry! Code Snippets are the basic building blocks of WordPress customization, and once you know the basics, they are simple to use.
Here are some free articles to get you started:
- Using Code Snippets from the Site
- Using a code snippets plugin
- The functions.php File
- Create a plugin file for custom functions
- Create a child theme
- Do not modify plugin files!
For "hands on" help, consider a plugin support subscription or the Pro Bundle.