Instagram API 脚本 - 计数图像并最多显示 10
Instagram API script - Count images and display max 10
您可以在下面看到我用来访问 "api" 并显示最多 10 张图像的脚本。到目前为止,这是有效的,但如果用户的图像少于 10 张,就会出错。如何显示最多 10 张图片,如果用户少于 10 张,则只显示用户拥有的图片数量?
脚本:
<?php
// Get data from Instagram User
$url = "https://www.instagram.com/wsj/media/";
$instagramdata = @file_get_contents($url);
$instagramdata = json_decode($instagramdata, true);
?><div class="instagramfeed"><?php
for($i = 0; $i < 10; $i++){
$instagramimages = $instagramdata['items'][$i]['images']['standard_resolution']['url'];
$instagrampage = $instagramdata['items'][$i]['code'];
$instagramlikes = $instagramdata['items'][$i]['likes']['count'];
?><a href="http://instagram.com/p/<?=$instagrampage?>" target="_blank"><?php
?><div class="instagramimages" style="background:url(<?=$instagramimages?>)no-repeat center;background-size:cover;"><?php
?>
<div class="instagramimagesoverlay">
<span class="instagramimagesoverlaytext"><i class="fa fa-heart fa-1x" aria-hidden="true"></i> <?php echo $instagramlikes;?></span>
</div>
<?php
?></a><?php
?></div><?php
}
?>
您需要为数组中的项目数设置计数,有多种方法可以做到这一点,但这里是一种
你似乎也有一些不必要的 <?php .. ?>
对,里面什么都没有,所以我也删除了它们。
<?php
// Get data from Instagram User
$url = "https://www.instagram.com/wsj/media/";
$instagramdata = @file_get_contents($url);
$instagramdata = json_decode($instagramdata, true);
?>
<div class="instagramfeed">
<?php
$cnt = count($instagramdata['items']) > 10 ? 10 : count($instagramdata['items']);
for($i = 0; $i < $cnt; $i++){
$instagramimages = $instagramdata['items'][$i]['images']['standard_resolution']['url'];
$instagrampage = $instagramdata['items'][$i]['code'];
$instagramlikes = $instagramdata['items'][$i]['likes']['count'];
?>
<a href="http://instagram.com/p/<?=$instagrampage?>" target="_blank">
<div class="instagramimages" style="background:url(<?=$instagramimages?>)no-repeat center;background-size:cover;">
<div class="instagramimagesoverlay">
<span class="instagramimagesoverlaytext"><i class="fa fa-heart fa-1x" aria-hidden="true"></i> <?php echo $instagramlikes;?></span>
</div>
</a>
</div> <!-- this probably belongs outside the foreach loop-->
<?php
}
?>
您可以在下面看到我用来访问 "api" 并显示最多 10 张图像的脚本。到目前为止,这是有效的,但如果用户的图像少于 10 张,就会出错。如何显示最多 10 张图片,如果用户少于 10 张,则只显示用户拥有的图片数量?
脚本:
<?php
// Get data from Instagram User
$url = "https://www.instagram.com/wsj/media/";
$instagramdata = @file_get_contents($url);
$instagramdata = json_decode($instagramdata, true);
?><div class="instagramfeed"><?php
for($i = 0; $i < 10; $i++){
$instagramimages = $instagramdata['items'][$i]['images']['standard_resolution']['url'];
$instagrampage = $instagramdata['items'][$i]['code'];
$instagramlikes = $instagramdata['items'][$i]['likes']['count'];
?><a href="http://instagram.com/p/<?=$instagrampage?>" target="_blank"><?php
?><div class="instagramimages" style="background:url(<?=$instagramimages?>)no-repeat center;background-size:cover;"><?php
?>
<div class="instagramimagesoverlay">
<span class="instagramimagesoverlaytext"><i class="fa fa-heart fa-1x" aria-hidden="true"></i> <?php echo $instagramlikes;?></span>
</div>
<?php
?></a><?php
?></div><?php
}
?>
您需要为数组中的项目数设置计数,有多种方法可以做到这一点,但这里是一种
你似乎也有一些不必要的 <?php .. ?>
对,里面什么都没有,所以我也删除了它们。
<?php
// Get data from Instagram User
$url = "https://www.instagram.com/wsj/media/";
$instagramdata = @file_get_contents($url);
$instagramdata = json_decode($instagramdata, true);
?>
<div class="instagramfeed">
<?php
$cnt = count($instagramdata['items']) > 10 ? 10 : count($instagramdata['items']);
for($i = 0; $i < $cnt; $i++){
$instagramimages = $instagramdata['items'][$i]['images']['standard_resolution']['url'];
$instagrampage = $instagramdata['items'][$i]['code'];
$instagramlikes = $instagramdata['items'][$i]['likes']['count'];
?>
<a href="http://instagram.com/p/<?=$instagrampage?>" target="_blank">
<div class="instagramimages" style="background:url(<?=$instagramimages?>)no-repeat center;background-size:cover;">
<div class="instagramimagesoverlay">
<span class="instagramimagesoverlaytext"><i class="fa fa-heart fa-1x" aria-hidden="true"></i> <?php echo $instagramlikes;?></span>
</div>
</a>
</div> <!-- this probably belongs outside the foreach loop-->
<?php
}
?>