Tengo problemas al subir archivos multimedia a un sitio de WordPress con la API JSON REST.
Con el siguiente código puedo subir las fotos, pero no se les asigna información, ni siquiera el nombre; de hecho, el nombre se convierte automáticamente en la URL y el nombre de archivo (sin la extensión).
$username = "ZX";
$password = "ZX";
$host = 'http://ZX.com/wp-json/wp/v2/media';
$data = json_encode($data);
$file = '/Users/xx.png';
$imagedata = file_get_contents($file);
$process = curl_init($host);
curl_setopt($process, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($process, CURLOPT_BINARYTRANSFER, TRUE);
curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($process, CURLOPT_TIMEOUT, 50);
curl_setopt($process, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($process, CURLOPT_POSTFIELDS, $data);
curl_setopt($process, CURLOPT_HTTPHEADER, array('Content-Type:image/png','Content-Disposition:attachment;filename='.$file));
$return = curl_exec($process);
print_r($return);
¿Cómo asignaría datos, como los siguientes, a las cargas?
$data = array(
"status" => "draft",
"title" => "Photo media",
"description" => "Photo media1",
"media_type" => "image",
"alt_text" => "alternate text"
);
media
objetos, por lo tanto, uno puede centrarse en las funciones de WP.