Tengo alrededor de 300 imágenes que quiero cargar en mi nueva cuenta de Tumblr, porque mi antiguo sitio de wordpress fue pirateado y ya no deseo usar wordpress.Carga de múltiples imágenes a través de la API de Tumblr
Cargué una imagen al día durante 300 días, y me gustaría poder tomar estas imágenes y cargarlas en mi sitio tumblr usando la API.
Las imágenes son actualmente locales, almacenadas en/images /. Todos tienen la fecha en que fueron cargados como los primeros diez caracteres del nombre del archivo, (01-01-2009-filename.png) y también fui a enviar este parámetro de fecha. Quiero poder ver el progreso de la secuencia de comandos al enviar las respuestas de la API a mi error_log. Esto es lo que tengo hasta ahora, basado en la página de la API de tumblr.
// Authorization info
$tumblr_email = '[email protected]';
$tumblr_password = 'password';
// Tumblr script parameters
$source_directory = "images/";
// For each file, assign the file to a pointer
aquí está el primer obstáculo. ¿Cómo obtengo todas las imágenes en el directorio y las recorro? Una vez que tengo un bucle for o while estableció que supongo que este es el siguiente paso
$post_data = fopen(dir(__FILE__) . $source_directory . $current_image, 'r');
$post_date = substr($current_image, 0, 10);
// Data for new record
$post_type = 'photo';
// Prepare POST request
$request_data = http_build_query(
array(
'email' => $tumblr_email,
'password' => $tumblr_password,
'type' => $post_type,
'data' => $post_data,
'date' => $post_date,
'generator' => 'Multi-file uploader'
)
);
// Send the POST request (with cURL)
$c = curl_init('http://www.tumblr.com/api/write');
curl_setopt($c, CURLOPT_POST, true);
curl_setopt($c, CURLOPT_POSTFIELDS, $request_data);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($c);
$status = curl_getinfo($c, CURLINFO_HTTP_CODE);
curl_close($c);
// Output response to error_log
error_log($result);
Por lo tanto, estoy atascado en cómo utilizar PHP para leer un directorio de archivos, bucle a través de cada uno de los archivos, y hacer cosas al nombre/con el archivo en sí. También necesito saber cómo configurar el parámetro de datos, como en la elección de multiparte/formdata. Tampoco sé nada sobre cURL.
Este código ya no funciona. Yo recomendaría https://gist.github.com/velocityzen/1242662 – westondeboer