WordPress plugin to get Instagram hashtag feeds working again by bypassing the API. Handcafted with love at Digitoimisto Dude Oy, a Finnish boutique digital agency in the center of Jyväskylä.
The Instagram fetcher is based on Instagram-Hashtag-Grabber from Thomas Bolander and settings page is made with excellent Simple Admin Pages library made by Nate Wright.
Image hashtag feed plugin is not meant to be "plugin for everyone", it needs at least some basic knowledge about php and css to add it to your site and making it look beautiful.
This is a plugin in development for now, so it may update very often because new features and changes in Instagram's end. By using this plugin, you agree that the anything can change to a different direction without a warning.
Please be aware that Instagram prohibits crawling, scraping and caching in their TOC. This plugin uses same endpoint that Instagram is using in their own site, so it's arguable if TOC can prohibit the use of openly available information.
There has been few court cases in United States, where the court has ruled that scraping is illegal. In Europe, there have been also few similar cases. None of these cases have had Instagram involved.
This being said, use your own consideration whether you wan't to use this plugin.
Image hashtag feed is released under the GNU GPL 2 or later.
Settings page can be found from Settings
-> Image hashtag feed
.
From settings page you can set which hastag to use and check when the last fetch from Instagram was made.
Plugin brings few functions to use in your site.
Returns array of objects received from Instagram. Object contains all basic details about the image; timestamp, comment and like counts, caption, author information and src to use when displaying image. These can be changed with filter.
object(stdClass)#1211 (10) {
["code"]=>
string(11) "BGY_ICpOF0S"
["date"]=>
int(1465382279)
["comments"]=>
object(stdClass)#1212 (1) {
["count"]=>
int(0)
}
["caption"]=>
string(80) "Some new swag arrived from @digitalocean sticker department <3 #digitoimistodude"
["likes"]=>
object(stdClass)#1213 (1) {
["count"]=>
int(0)
}
["owner"]=>
object(stdClass)#1214 (2) {
["username"]=>
string(9) "wahalahti"
["id"]=>
string(10) "3038518606"
}
["thumbnail_src"]=>
string(161) "https://scontent-arn2-1.cdninstagram.com/t51.2885-15/s640x640/sh0.08/e35/13397680_922638724525249_472586061_n.jpg?ig_cache_key=MTI2ODA0MDkyNDYyOTg1MTQxMA%3D%3D.2"
["is_video"]=>
bool(false)
["id"]=>
string(19) "1268040924629851410"
["display_src"]=>
string(145) "https://scontent-arn2-1.cdninstagram.com/t51.2885-15/e35/13397680_922638724525249_472586061_n.jpg?ig_cache_key=MTI2ODA0MDkyNDYyOTg1MTQxMA%3D%3D.2"
}
Returns string containing all images in html img -tag, <img src='thumbnail_src' alt='caption' />
.
Displays all images in html img -tag, <img src='thumbnail_src' alt='caption' />
.
There are few filters where you can hook and change functionality of plugin.
Change amount of images to fetch and store. Default value is 10.
Usage is simple; add add_filter( 'dude_img_hashfeed_insta_count', function() { return 2; } );
to your theme functions.php file.
Images are stored to transient in favor of caching and reducing page load time. By default, lifetime is five minutes and after that new images are fetched from Instagram when calling one of previously listed functions.
Use WordPress transient expiration syntax.
By default we are asking instagram to return timestamp, comment and like counts, caption, author information, image addresses and possible video address. This can be changed, but be aware that $hashtag
and $count
are mandatory.
ig_hashtag($hashtag) { media.first($count) { count, nodes { caption, code, comments { count }, date, display_src, id, is_video, likes { count }, owner { id, username }, thumbnail_src, video_views, video_url }, page_info } }
To use with composer, run composer require digitoimistodude/image-hashtag-feed dev-master
in your project directory or add "digitoimistodude/image-hashtag-feed":"dev-master"
to your composer.json require.
If you have ideas about the theme or spot an issue, please let us know. Before contributing ideas or reporting an issue about "missing" features or things regarding to the nature of that matter, please read Please note section. Thank you very much.
- Support for multiple hashtags
- Run fetch after
dude_img_hashfeed_insta_count
value has changed