Last active
November 10, 2017 14:11
-
-
Save owex/1448d103a26af5f43014280ffbc566f3 to your computer and use it in GitHub Desktop.
Simple PHP Instagram feed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// Created following https://medium.com/@bkwebster/how-to-get-instagram-api-access-token-and-fix-your-broken-feed-c8ad470e3f02 | |
function get_instagram($user_id=XXXXXXXXX, $count=18, $width=190, $height=190){ | |
$url = 'https://api.instagram.com/v1/users/'.$user_id.'/media/recent/?access_token=XXXXXXXXXXXXXXXXXXXXXX&count='.$count; | |
// Also Perhaps you should cache the results as the instagram API is slow | |
$cache = './instagram/'.sha1($url).'.json'; | |
if(file_exists($cache) && filemtime($cache) > time() - 60*60){ | |
// If a cache file exists, and it is newer than 1 hour, use it | |
$jsonData = json_decode(file_get_contents($cache)); | |
} else { | |
$jsonData = json_decode((file_get_contents($url))); | |
file_put_contents($cache,json_encode($jsonData)); | |
} | |
$result = '<div class="row no-gutters">'.PHP_EOL; | |
foreach ($jsonData->data as $key=>$value) { | |
$result .= "\t".'<div class="col-6 col-sm-3 col-md-3 col-lg-2"><a data-fancybox="group" | |
title="'.htmlentities($value->caption->text).' '.htmlentities(date("F j, Y, g:i a", $value->caption->created_time)).'" | |
href="'.$value->images->standard_resolution->url.'"> | |
<img class="img-fluid" src="'.$value->images->low_resolution->url.'" alt="'.$value->caption->text.'" width="'.$width.'" height="'.$height.'" /> | |
</a></div>'.PHP_EOL; | |
} | |
$result .= '</div>'.PHP_EOL; | |
return $result; | |
} | |
echo get_instagram(); | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment