今天遇到一个问题,wordpress无法上传图片,经过半晌的研究发现有以下4种原因造成。
1.浏览器问题,360浏览器有两种模式,极速和兼容,兼容模式下wp后台上传不了图片。
2.图片名称问题,图片含有中文字符,有一些情况上传不了图片,解决办法在网上有很多,以下是小编在网上搜集到的。
首先到WordPress目录下找到wp-admin/includes/file.php这个文件。在wp-admin/includes/file.php文件中查找
$new_file = $uploads[‘path’] . “/$filename”;
(1)
替换成下面的:
$new_file = $uploads[‘path’] . “/”.date(“YmdHis”).floor(microtime()*1000).”.”.$ext; 此方法亲测可行,但会吧图片以年月日时分秒形式重新命名。
$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’);
3.也有网友说,在wp-config配置文件中,在require_once(ABSPATH . ‘wp-settings.php’);前面加上代码define(‘CONCATENATE_SCRIPTS’, false );就可以解决问题,小编测试后并没有任何作用。
4.还有网友说是数据库的问题,需要在数据库wp-options表中,将uploads的值改为wp-content/uploads,就可以解决问题。小编测试过后,也没有器作用。
以上就是图片上传不了,或不显示时小编遇到的所有问题。希望能对大家有帮助。