wordpress无法上传中文名文件的解决方法
在wordpress在上传以中文名命名的文件时,会出现乱码,无法上传等问题,解决这个问题,可以下载插件,也可以手动修改些代码,我这里提供2种简单修改代码的方法解决wordpress无法上传中文名的文件的方法。
方法一、让wordpress识别中文上传,解决乱码问题
首先到FTP里面找到wp-admin/includes/file.php这个文件。在wp-admin/includes/file.php文件中查找
1:
$new_file = $uploads[‘path’] . “/$filename”; |
替换成下面的:(注意:文件中有2处$new_file = $uploads[‘path’] . “/$filename”; ,我们只需要替换的是第一处,第2处不需要替换)(修正中文文件名编码问题)
$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’); |
注:其中的 iconv(“UTF-8″,”GB2312″,$filename); 也可以使用“GBK”编码
但是这个方法有个缺点就是每次我上传的文件名重复的话,就会覆盖原文件
方法二:自动重命名wordpress中文名文件
首先到FTP里面找到wp-admin/includes/file.php这个文件。在wp-admin/includes/file.php文件中查找
1:
$new_file = $uploads[‘path’] . “/$filename”; |
替换成下面的:(注意:文件中有2处$new_file = $uploads[‘path’] . “/$filename”; ,我们只需要替换的是第一处,第2处不需要替换)(修正中文文件名编码问题)
2:
$new_file = $uploads[‘path’] . “/”.date(“YmdHis”).floor(microtime()*1000).”.”.$ext; |
这样就可以实现wordpress上传图片自动重命名了。
以上代码意思就是,上传文件就会以“年月日时分秒+千位毫秒整数”的格式重命名文件。这就再也不用担心图片文件名相同而覆盖了原文件。
原创文章,转载时必须以链接形式注明本文来自云中客,本文固定链接:http://vr.ccyzk.com/476.htm
其实没必要用中文,重命名比较好,变态的客户,用IE6,容易挂图。。
那倒是,但是还是有需要的,而且方法里有提供自动重命名的方法
原来是编码的问题……
毕竟是国外的产品,汉化后才方便
是的,东林寺待过
这个不错