WP REST API v1.2.4で画像をメディアへ投稿するメモです。
OAuth1認証済みのクライアントから/wp-jason/mediaへ新規画像をPOSTする例です。
サンプルはGuzzle6の利用を前提としています。
https://github.com/guzzle/guzzle
WP REST APIの画像投稿部分は下記の記事を参考にしました。
WordPress › Support » New post with image
/*
* WP REST API version 1.2.4
* API base url ishttp://www.example.com/wp-json
*
* 参考
* https://wordpress.org/support/topic/new-post-with-image
*/
/*
* OAuth1認証済みのGuzzle HTTP Client取得
*/
$client = ... ;
/*
* 画像のバイナリデータ取得
*/
$finfo = new finfo(FILEINFO_MIME_TYPE);
$fmime = $finfo->file($path);
$handle = fopen($path, "r");
$fdata = fread($handle, filesize($path));
/*
* APIへ画像をPOST
*/
$headers = [
'Content-Type' => $fmime,
'Content-Disposition' => 'attachement; filename='.basename($path),
'Content-Transfer-Encoding' => 'binary',
];
$response = $client->request(
'POST',
'/media',
[
'headers' => $headers,
'body' => $fdata,
]
);
No comments yet.
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。