解決WordPress上傳中文附件亂碼問題

最近在本地測試Wordpress,其他測試一切正常,但是就上傳中文附件沒法下載,顯示為404,修改conf也不行,所以上網查了查,很多方法不能用了,不過還是找到了2個能用的方法,親測可用,一個簡單一點,一個復雜一點。分享給大家。

簡單的,把以下代碼添加到主題目錄functions.php 文件

function upload_file($filename) {
$parts = explode(‘.’, $filename);
$filename = array_shift($parts);
$extension = array_pop($parts);
foreach ( (array) $parts as $part)
$filename .= ‘.’ . $part;

if(preg_match(‘/[一-龥]/u’, $filename)){
$filename = md5($filename);
}
$filename .= ‘.’ . $extension;
return $filename ;
}
add_filter(‘sanitize_file_name’, ‘upload_file’, 5,1);

 

復雜一點的,修改admin文件及里面的文件。

1、找到wp-admin/includes/file.php

2、查找到

$new_file = $uploads['path'] . "/$filename"; 
替換為
$new_file = $uploads['path'] . "/" . iconv("UTF-8","GB2312",$filename);
3、查找到
return apply_filters( 'wp_handle_upload', array( 'file' => $new_file, 'url' => $url, 'type' => $type ), 'upload' ); 
替換為
return apply_filters( 'wp_handle_upload', array( viagra online usa 'file' => $uploads['path'] . "/$filename", 'url' => $url, 'type' => $type ) , 'upload');

改后保存。


2013年8月1日 | 歸檔于 個人網站
  1. 2016年6月9日 23:50 | #1

    幫我大忙了,thank you!

發表評論

XHTML: 您可以使用這些標簽: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
必去啟用JS文件
快乐十分精确公式