我尝试了很多方法来使用 xml-rpc 将图像上传到 wordpress,并通过一系列文件名、路径和文件类型获得完美的响应。不过,如果我在 wordpress 中查看图像,它会生成一个 0 字节损坏的图像文件。
我已经创建了一个类来操作所有查询,例如创建帖子/编辑帖子/删除帖子等。所有工作文件只是 wp.uploadfile 运行良好。
这是我的图片上传功能。
function upload_pic($url, $pic, $type='image/jpg')
{
$fs = filesize($url);
$file = fopen($url, 'rb');
$filedata = fread($file, $fs);
fclose($file);
$content = array(
'name' => $pic,
'type' => $type,
'bits' => new IXR_Base64($filedata),
'overwrite' => false
);
$params = array(1,$this->UserName,$this->PassWord,$content,true);
return $this->send_request('wp.uploadFile',$params);
}
我得到以下回应
Array
(
[id] => 190
[file] => P_1364799102.jpg
[url] => http://localhost/wordpress/wp-content/uploads/2013/04/P_13647991025.jpg
[type] => image/jpg
)
响应看起来不错,但静止图像文件已损坏 0 字节。
请帮我解决一下这个。我也试过'metaWeblog.newMediaObject',但问题还是一样。