Ho circa 300 immagini che voglio caricare sul mio nuovo account Tumblr, perché il mio vecchio sito wordpress è stato violato e non desidero più utilizzare wordpress.Caricamento di più immagini tramite l'API Tumblr
Ho caricato un'immagine al giorno per 300 giorni, e mi piacerebbe essere in grado di prendere queste immagini e caricarle sul mio sito tumblr usando l'api.
Le immagini sono attualmente locali, memorizzate in/images /. Hanno tutti la data in cui sono stati caricati come i primi dieci caratteri del nome file, (01-01-2009-filename.png) e sono andato a inviare anche questo parametro di data. Voglio essere in grado di vedere il progresso dello script emettendo le risposte dall'API al mio error_log. Ecco quello che ho finora, basato sulla pagina delle api 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
ecco il primo ostacolo. Come posso ottenere tutte le immagini nella directory e visualizzarle in loop? Una volta che ho un ciclo for o while istituito Suppongo che questo è il passo successivo
$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);
Così, mi sono bloccato su come utilizzare PHP per leggere una directory di file, ciclo attraverso ognuno dei file, e fare cose al nome/con il file stesso. Ho anche bisogno di sapere come impostare i parametri dei dati, come nella scelta di multiparte/dati. Inoltre non so nulla di cURL.
Questo codice non funziona più. Consiglierei https://gist.github.com/velocityzen/1242662 – westondeboer