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