CONTENTS

日本語のファイル名をアップロードする場合のみ、ランダム文字にする

投稿日:2023.7.12

更新日:2023.7.13

 

function.phpに以下の関数を追加する

/**
 * 日本語のファイル名のみランダム文字にする
 */
function custom_rename_upload_file($fileName)
{
	//文字数が一致していれば英語名なので変換しない
	if(strlen($fileName) == mb_strlen($fileName,'utf8')) return $fileName;
	
	// ファイル名が大文字の場合もあるので、ファイル名全てを小文字に変換する
	$fileName = strtolower($fileName);
	
	// 「.」の位置を取得
	$index = strrpos($fileName, '.');
	
	// 拡張子を取得
	$exts = $index ? '.' . substr($fileName, $index + 1) : '';
	
	// ファイル名をmd5で生成する
	$fileName = md5(time() . $fileName) . $exts;
	
	return $fileName;
}
add_filter('sanitize_file_name', 'custom_rename_upload_file', 10);
一覧へ

お問い合わせ

ホームページ制作のご依頼・ご相談・お見積りなど、どんなことでもお気軽にお問合せ下さい。折り返し、担当者よりご回答させていただきます。