在我們使用wordpress發(fā)布文章時(shí),經(jīng)常都需要添加圖片、多媒體什么的。然而,大家都知道WordPress是舶來(lái)物,對(duì)于中文用戶來(lái)說(shuō),我們都會(huì)把圖片命名為中文的,由于WordPress的機(jī)制的原因,并不能正常的顯示圖片或者各種的問(wèn)題。
那么,如何讓WordPress圖片重命名呢?
現(xiàn)在,就和大家說(shuō)說(shuō)更加接地氣一點(diǎn)的WordPress 技巧。讓圖片上傳以后,文件能在我們上傳的時(shí)候自動(dòng)變成英文或數(shù)字。
本文將會(huì)介紹兩個(gè)格式的文件命名方法:根據(jù)上傳的時(shí)間命名,如20150901112433.xxx(表示2015年9月1日11時(shí)24分33秒上傳的,xxx表示文件類型后綴);另一種是將文件名通過(guò)md5轉(zhuǎn)碼后得到的一個(gè)32位字符串,如 f78c857f04e596f4e7bcd36fddf2769f.xxx(原始文件名為admin.xxx)。在自定義的wordpress主題或官方自帶的主題中都可以使用這個(gè)方法來(lái)實(shí)現(xiàn)上傳文件重命名。
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
$info = pathinfo($file['name']);
$ext = $info['extension'];
$filedate = date('YmdHis').rand(10,99);//為了避免時(shí)間重復(fù),再加一段2位的隨機(jī)數(shù)
$file['name'] = $filedate.'.'.$ext;
return $file;
}
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );
function custom_upload_filter( $file ){
$info = pathinfo($file['name']);
$ext = '.' . $info['extension'];
$md5 = md5($file['name']);
$file['name'] = $md5.$ext;
return $file;
}
如果你是使用蘇醒的vfilmtime2014主題,請(qǐng)把上面的代碼加入到主題目錄中的includes文件夾里的add.php中即可。
如果你是使用蘇醒的traveler主題,請(qǐng)把上面的代碼加入到主題目錄中里的functions_suxingme.php中即可。
其他的朋友可以把這段代碼黏貼到你當(dāng)前 WordPress主題的 functions.php 中!
]]>