-1

我需要在我的网站上显示带有我公司哈希标签的 instagram 照片。我正在使用以下代码:

<?php 
 function callInstagram($url)
{
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => 2
));

$result = curl_exec($ch);
curl_close($ch);
return $result;
}

$tag = 'hermomy';
$client_id = 'my client id';

$url = 'https://api.instagram.com/v1/tags/'.$tag.'/media/recent?client_id='.$client_id;

$inst_stream = callInstagram($url);
$results = json_decode($inst_stream, true);

//Now parse through the $results array to display your results... 
foreach($results['data'] as $item){
    $image_link = $item['images']['low_resolution']['url'];
    echo '<img src="'.$image_link.'" />';
}
?>

*我已经将“我的客户 ID”替换为我的真实客户 ID

之后我得到的结果只显示了 13 张照片,正确的应该有 373 张照片。您可以查看http://web.stagram.com/tag/hermomy/。总共有大约 373 张带有这个井号标签的照片 - #hermomy 我的结果页面 - 103.6.244.109/~hermo/ayeetest.php 那么,我怎样才能显示所有这些照片?

4

2 回答 2

0

其他人可能会更好地回答,但这似乎不可能查看 api。

您只看到 13 的原因是您使用的 url 仅适用于最近的媒体。请参阅标记端点

于 2013-09-04T10:59:32.997 回答
0

Instagram API 不会通过单个 API 调用返回所有照片,我认为每个调用最多返回 20 张照片。在进行第一次 API 调用后,您必须使用 JSON 响应的“分页”中的“next_url”进行另一个 API 调用以获取下一组 20 张图像,例如,您可能需要实现一个“显示更多”按钮将加载下一组,依此类推。

以下是您从 instagram API 获得的典型响应,在 pagination.next_url 向 API url 发出请求将返回下一组照片。

{
    "meta": {
        "code": 200
    },
    "data": {
        ...
    },
    "pagination": {
        "next_url": "...",
        "next_max_id": "13872296"
    }
}
于 2013-09-13T18:36:31.093 回答