将tumblr的照片帖子嵌入外部网站

时间:2012-10-10 12:51:28

标签: image api photo tumblr

我正在尝试使用tumblr照片帖子和“无限滚动”图库进入外部网站。

一切正常但我有一个大问题。

我的foreach功能在前20个结果后停止工作。 无限卷轴需要分页才能工作,我需要:

  1. 检索所有帖子而不仅仅是前20个
  2. 从第21个帖子开始计数的方法,然后在31日之后创建一个分页
  3. 这是我正在使用砌砖的PHP

    <div id="container">
        <?php
            // tag filtrante
            $tag = 'conceptual';
    
            $api_key = 'the key';
    
            // preleva e decodifica il file (prende solo i post di di tipo "photo")
            $tumblr = json_decode(file_get_contents('http://api.tumblr.com/v2/blog/nofrillsintown.tumblr.com/posts/photo?api_key=' . $api_key . '&tag=' . $tag));
    
            // scorre tutti i post
            foreach ($tumblr->response->posts as $post) {
    
                    // scorre tutte le immagini contenute in un post
                    foreach ($post->photos as $photo) {
                            echo '<div class="item"><a href="'.$photo->original_size->url.'" rel="lightbox"><img src="'.$photo->alt_sizes[2]->url.'" /></a></div>';
                    };
            };
        ?>
        </div>
    

1 个答案:

答案 0 :(得分:0)

使用offset参数获取20日后的帖子:https://www.tumblr.com/docs/en/api/v2#posts

$limit = 10;
$page = 1;
$url = 'http://api.tumblr.com/v2/blog/nofrillsintown.tumblr.com/posts/photo?api_key=' . $api_key. '&tag=' . $tag;
$url .= '&limit=' . $limit. '&offset=' . ($limit * ($page - 1));

由于Tumblr只允许您同时收到20个帖子,因此您必须多次拨打此电话。您应该缓存结果,而不是在每次加载页面时进行调用。