我需要feed一次提供7张图片。由于某种原因,除了第一页只提供5个外,所有页面都提供了7个。
<?php
function fetchData($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$maxtagid = (isset($_GET['instatag'])) ? $_GET['instatag'] : false;
$url = "https://api.instagram.com/v1/users/self/feed?access_token=$accesstoken&count=7";
if($maxtagid){
$url .= "&max_id=$maxtagid";
}
$result = json_decode(fetchData($url));
foreach ($result->data as $post) echo '<div class="insta-square"><a target="_blank" href="'.$post->link.'"><img src="'.$post->images->standard_resolution->url.'" alt="'.$post->caption->text.'" width="100%" height="auto" /></a></div>';
$nextmax = $result->pagination->next_max_id;
if($nextmax != ''){ ?>
<div class="insta-square"><a href="<?php echo get_home_url(); ?>/gallery?instatag=<?php echo $nextmax; ?>"><img src="<?php echo get_template_directory_uri(); ?>/images/next-slide-square.png" /></a></div>
<?php } ?>
我已经玩了各种设置,如果$maxtagid设置,删除VERIFYPEER等,似乎没有工作。我做错了什么?
我认为max_id
参数在第一页引起了问题。试试这个解决方案:
<?php
function fetchData($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
$result = curl_exec($ch);
curl_close($ch);
return $result;
}
$maxtagid = (isset($_GET['instatag'])) ? $_GET['instatag'] : false;
$url = "https://api.instagram.com/v1/users/self/feed?access_token=$accesstoken&count=7";
if($maxtagid){
$url .= "&max_id=$maxtagid";
}
$result = json_decode(fetchData($url));
foreach ($result->data as $post) echo '<div class="insta-square"><a target="_blank" href="'.$post->link.'"><img src="'.$post->images->standard_resolution->url.'" alt="'.$post->caption->text.'" width="100%" height="auto" /></a></div>';
$nextmax = $result->pagination->next_max_id;
if($nextmax != ''){ ?>
<div class="insta-square"><a href="<?php echo get_home_url(); ?>/gallery?instatag=<?php echo $nextmax; ?>"><img src="<?php echo get_template_directory_uri(); ?>/images/next-slide-square.png" /></a></div>
<?php } ?>