3dgoo/silverstripe-instagram-scraper
An Instagram scraper module for Silverstripe
Maintainers
Package info
github.com/3Dgoo/silverstripe-instagram-scraper
Type:silverstripe-vendormodule
pkg:composer/3dgoo/silverstripe-instagram-scraper
Requires
Requires (Dev)
Suggests
None
Provides
None
Conflicts
None
Replaces
None
MIT 10acec36746ce941a8b4a78fc193ff0d414dd1db
- 3dgoo <michael.woop@3dgoo.com>
This package is auto-updated.
Last update: 2026-06-21 19:20:29 UTC
README
👁 Build Status
👁 codecov.io
👁 Scrutinizer Code Quality
👁 Latest Stable Version
👁 Total Downloads
👁 Latest Unstable Version
👁 License
An Instagram scraper module for Silverstripe.
Requirements
Installation (with composer)
$ composer require 3dgoo/silverstripe-instagram-scraper
Usage
Import Instagram posts of a certain handle through running the following dev task:
php vendor/silverstripe/framework/cli-script.php dev/tasks/import-instagram-posts handle=<handle>
Sometimes Instagram may require us to log in to fetch this data. This can be done by adding the following to our
.env file:
INSTAGRAM_USERNAME="<username>"
INSTAGRAM_PASSWORD="<password>"
Once our Instagram posts are imported we can display them with the following code:
PageController.php
use X3dgoo\InstagramScraper\Model\InstagramPost;
class PageController extends ContentController
{
public function InstagramPosts($limit = 10)
{
return InstagramPost::get()
->filter([
'Show' => true,
])
->limit($limit);
}
}
Page.ss
<% if $InstagramPosts %>
<div class="instagram-posts">
<% loop $InstagramPosts %>
<div class="instagram-post">
<a href="{$Link}" target="_blank">
<img src="{$ImageThumbnailURL}" alt="{$Caption.LimitWordCount(20).XML}" />
<div class="caption">
$Caption.LimitWordCount(20)
</div>
</a>
</div>
<% end_loop %>
</div>
<% end_if %>
