Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jeffochoa/77390f1ec2c044923cec0aa597dde956 to your computer and use it in GitHub Desktop.
Save jeffochoa/77390f1ec2c044923cec0aa597dde956 to your computer and use it in GitHub Desktop.
WP API v2 image upload from media endpoint
<?php
/*
* WP REST API version 2.0-beta7
* API base url ishttp://www.example.com/wp-json
*
* Reference
* https://wordpress.org/support/topic/new-post-with-image
*/
/*
* Get Guzzle HTTP Client. That client has been authenticated.
*/
$client = ...
/*
* Get binary data of image.
* $path is file path to be uploaded.
*/
$handle = fopen($path, 'r');
$fdata = fread($handle, filesize($path));
/*
* Post media.
* Request to WP REST API media endpoint
*/
$response = $client->request(
'POST',
'wp/v2/media',
[
'multipart' => [
[
'name' => 'file',
'contents' => $fdata,
'filename' => basename($path),
],
],
);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment