Rename media filename during upload with unique hash.
Media Auto Hash Rename will rename any file (specific files can be ignored by file extension) during upload, with unique, low collision hashes. Hash characters and length can be configured for even lower collision rate.
More information please visit my site.
This plugin provides no configuration GUI to make it more easier to maintain with the future WordPress updates.
Currently there’re 3 constants you can configure in your wp-config.php
, I recommend WP-CLI for maintaining these constants.
MAHR_LENGTH
: length of the random hashes, (default to 8
), longer can help reduce collision. Hashes at the length of 8 can be collision-free at the scale of 50,000 images).MAHR_CHARS
: Characters used in hashes, default to 0123456789abcdefghijklmnopqrstuvwxyz_
, You can add more characters like uppercased alphabelts to dramatically reduce the collision without increasing the length of your filenames. But please note that this option can be dangerous if you’re not familer with general URI encoding. So if you don’t know what characters are allowed in a filename, just keep it untouched and use the default option.MAHR_IGNORE
: File extensions to be ignored, default to pdf, zip
, you can define a comma delimited list of file extensions to bypass renaming process of this plugin. All files that has the file extension you defined in the list will be ignored. Please note that: 'pdf, 7z, bmp'
works, '.pdf, .7z, .bmp'
does not.'pdf, zip'
) or without ('pdf,zip'
) space both work.'7z'
, then 'pdf, zip'
will be processed during upload. You need to reapply these extensions with your own: '7z, pdf, zip'
.[]
(without quotes) to this option: define( 'MAR_IGNORE', [] );
to force process PDF and ZIP files.WordPress (Also works on multisite enabled instance):
/wp-content/plugins/
directory, or just install this plugin from your WordPress backend.This pluigin, doesn’t not write any extra data into your database. The files renamed by this plugin will still work after you deactivate this plugin.