解決WordPress文章上傳圖片使用中文名不顯示的問題

天府雲創發表於2016-12-07

在使用WP後臺編輯中發現,我上傳的幾張圖片都不能顯示縮圖,只有點選瀏覽圖片的時候才能看見,經過搜尋,發現可以通過以下方式解決

方法一: 
首先到WordPress目錄下找到wp-admin/includes/file.PHP這個檔案。在wp-admin/includes/file.php檔案中查詢 

1: $new_file = $uploads['path'] . "/$filename"; 
替換成下面的:
$new_file = $uploads['path'] . "/" . iconv("UTF-8","GB2312",$filename); 

2: return apply_filters( 'wp_handle_upload', array( 'file' => $new_file, 'url' => $url, 'type' => $type ), 'upload' ); 
替換成下面的
return apply_filters( 'wp_handle_upload', array( 'file' => $uploads['path'] . "/$filename", 'url' => $url, 'type' => $type ) , 'upload');

但是這個方法有個缺點就是每次我上傳的檔名重複的話,就會覆蓋原檔案

方法二:
首先到WordPress目錄下找到wp-admin/includes/file.php這個檔案。在wp-admin/includes/file.php檔案中查詢 

  $new_file = $uploads['path'] . "/$filename"; 
替換成下面的:

$new_file = $uploads['path'] . "/".date("YmdHis").floor(microtime()*1000).".".$ext; 
這樣就可以實現wordpress上傳圖片自動重新命名了。 
以上程式碼意思就是,上傳檔案就會以“年月日時分秒+千位毫秒整數”的格式重新命名檔案。這就再也不用擔心圖片檔名相同而覆蓋了原檔案。

經過測試後採用第二種方案解決問題。

0

相關文章