我遇到了is_file()
和file_exists()
的问题,我正在尝试验证wp uploads
文件夹中存在的精选图片....两个输出字符集并创建每个缩略图大小的多个错误
fopen(http://www.xxx.gf/wp-content/uploads/2014/09/1-150x150.jpg): failed to open stream: HTTP wrapper does not support writeable connections in /home/tserv/public_html/wp-includes/class-wp-image-editor.php on line 396
这是奇怪,因为我正在向两个函数传递正确的服务器路径,并且这些函数适用于uploads文件夹之外的文件。文件名为1.jpg
及其附加内容 - 150x150以及其他一些尺寸,这些都是wordpress的缩略图尺寸。
更新:正在传递服务器路径:例如home / user / etc ..,错误是说fopen ...但是我没有直接调用fopen,也没有将URL传递给file_exists
,is_file
。
从开始这个开始,我意识到当我可以使用wp_functions
进行检查时,我很想尝试验证它,但我想弄清楚为什么会发生这种情况!
php code
if($x= is_file($upload_path.$filename) )
server- linux debian wheezy vps
open_basedir= None
safemode- off
folder permissions - 777 (temp)
答案 0 :(得分:0)
您无法使用http使用fopen打开文件,并希望写入该文件。您将需要使用fopen并将第二个选项指定为“r”以供只读使用,或者您可以继续使用此代码,但实际使用服务器路径而不是http://访问它。您还可以使用文件获取内容。
在访问上传时尝试使用http://codex.wordpress.org/Function_Reference/wp_upload_dir
$upload_dir = wp_upload_dir(); // Array of key => value pairs
//base dir
$base_dir = $upload_dir['basedir'];