我需要遍历我在Tumblr上的所有现有帖子,并向每个帖子添加文本(一个URL),但Tumblr批量编辑器只允许批量添加标签。
我如何使用API来做我需要做的事情(似乎没有以这种方式使用API进行编辑的示例)?
PHP或Ruby也可以。
发布于 2016-08-26 23:28:00
没有。API不提供一次编辑所有帖子的方法。你必须一次只做一个。
您可以通过posts method api.tumblr.com/v2/blog/{blog-identifier}/posts?api_key={key}检索您的帖子列表,一次最多可返回20个帖子。您可以指定一个offset参数,以继续拉入更多的帖子,直到您到达终点。
$requestURI = "http://api.tumblr.com/v2/blog/$blogId/posts?api_key=$APIkey&offset=%d";
if ($response = file_get_contents(sprintf($requestURI, 0))) {
$data = json_decode($response);
$posts = $data["response"]["posts"];
$totalPosts = $data['total_posts'];
$gotPosts = count($posts);
while($gotPosts < $totalPosts) {
$offset = $totalPosts - $gotPosts;
$response = file_get_contents(sprintf($requestURI, $offset));
$data = json_decode($response);
$posts = array_merge($posts, $data["response"]["posts"]);
$gotPosts = count($posts);
}
}一旦你积累了一个给定Tumblelog的所有帖子的列表,你就可以迭代它们并通过edit method api.tumblr.com/v2/blog/{blog-identifier}/post/edit编辑每个帖子。
foreach($posts as $post) {
/* do your edit posts here */
}https://stackoverflow.com/questions/39169424
复制相似问题