我正在使用wp-api进行测试,顺便说一句,我很兴奋。这就是我所做的。
我的JSON
{
"title":"Hello Updated World!",
"content_raw":"Howdy updated content.",
"date":"2013-04-01T14:00:00+10:00"
}
直接来自wp-api docs
中的示例我一直得到的错误是
[
{
"code": "json_missing_callback_param",
"message": "Missing parameter data"
}
]
查看github上的源代码,看起来缺少必需参数
根据documentation标题和内容raw似乎是唯一必填字段。如果您有任何建议,我很想知道我错过了什么。感谢。
答案 0 :(得分:0)
您也可以尝试使用此插件来使用Wordpress网络服务,使用它也可以创建自定义网络服务:
https://wordpress.org/plugins/json-api/
答案 1 :(得分:0)
这是我用PHP / cURL调用本地WP-API的代码:
$endpoint = 'http://localhost/my-site/wp-json/wp/posts';
$username = 'test-user';
$password = 'test-pass';
$data = array(
'title' => $post_title,
'content_raw' => $post_content,
'status' => 'publish',
);
$json_data = json_encode($data);
$ch = curl_init($endpoint);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $json_data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($json_data),
));
$result = json_decode(curl_exec($ch));
要更新这篇文章,我会将我的数据更改为:
$data = array(
'ID' => $post_id,
'title' => $new_title,
'content_raw' => $new_content,
);
ID是更新时的必填字段。