アップロードしたファイル名をユニークなファイル名に変更する

WordPressで画像などのファイルをアップロードすると元々のファイル名でアップロードされる。
同名のファイルがあると1とか2とか付いた別名になるけれど、どうせならユニークなファイル名にしたい。

2年ほど前に作られたプラグイン「Upload+」は、アップロードしたファイルをユニークなファイル名に変更してくれるプラグインらしいが、今のWordpressでは動かないようだ。

Googleで検索すると
Rename files during upload within WordPress backend
こちらでユニークなファイル名にするプラグインが紹介されている。

function make_filename_hash($filename) {
	$info = pathinfo($filename);
	$ext  = empty($info['extension']) ? '' : '.' . $info['extension'];
	$name = basename($filename, $ext);
	//return md5($name) . $ext;
	return md5($ip . uniqid(mt_rand(), true)) . $ext;
}
add_filter('sanitize_file_name', 'make_filename_hash', 10);

コードはこれだけ。
プラグインにするためのコメントを付けてpluginにアップロードして有効にする。
実際にアップロードしてみると

こんな感じでmd5されたファイル名でアップロードされる。

「アップロードしたファイル名をユニークなファイル名に変更する」への2件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)