Skip to main content

Instagram Feed Integration

Display your Instagram posts directly on your website with our native Instagram Feed integration. Each subsite can connect its own Instagram Business account for a personalized social media experience.

Overview

The Instagram Feed integration allows you to:

  • 🔗 Connect your Instagram Business or Creator account
  • 📸 Display your latest posts in a beautiful carousel
  • ❤️ Show engagement metrics (likes and comments)
  • 🔄 Automatic feed updates with smart caching
  • 🏢 Independent connections per subsite (multisite supported)

Prerequisites

Before you begin, ensure you have:

  1. Instagram Business or Creator Account — Personal accounts are not supported
  2. Facebook Page — Your Instagram account must be linked to a Facebook Page
Not sure about your account type?

Go to your Instagram app → Settings → Account → Switch to Professional Account to convert to a Business or Creator account.


Connecting Your Instagram Account

Step 1: Access Settings

Navigate to Settings → Instagram Feed in your WordPress admin dashboard.

Instagram Feed Settings Location

Step 2: Initiate Connection

Click the Connect Instagram Account button. You'll be redirected to Facebook to authorize the connection.

Step 3: Authorize Permissions

  1. Log in to Facebook with the account that manages your Facebook Page
  2. Review the requested permissions:
    • instagram_basic — Access your Instagram profile and media
    • pages_show_list — See the list of Pages you manage
    • pages_read_engagement — Read engagement data
    • business_management — Manage your business assets
  3. Click Continue to grant permissions
Important

Make sure to grant all requested permissions. The integration won't work correctly with partial permissions.

Step 4: Select Your Account

If you manage multiple Facebook Pages with Instagram accounts:

  1. A dropdown will appear showing all available Instagram accounts
  2. Select the account you want to connect (displayed as @username (Page Name))
  3. Click Connect Account

If you only have one eligible account, it will be connected automatically.

Step 5: Confirmation

Once connected, you'll see:

  • ✅ Green Connected status indicator
  • 📛 Your Instagram username (e.g., @globber.official)
  • 📅 Token expiration date with countdown
  • 🕐 Cache last updated time

Managing Your Connection

Connection Status

The settings page displays your current connection status:

StatusIndicatorMeaning
Connected🟢 GreenEverything working normally
Token Expiring Soon🟡 YellowToken expires within 7 days
Not Connected🔴 RedNo account connected

Available Actions

Refresh Cache

Forces an immediate update of your Instagram feed data.

  • Click Refresh Cache to fetch the latest posts
  • Use when you've posted new content and want it to appear immediately
  • Cache normally refreshes automatically every hour

Refresh Token

Extends your access token validity for another 60 days.

  • Click Refresh Token to renew
  • Recommended when you see the "Token Expiring Soon" warning
  • Token can only be refreshed while still valid
Automatic Token Refresh

The system automatically attempts to refresh tokens when they're within 7 days of expiring. However, we recommend manually refreshing as a backup.

Disconnect

Removes the Instagram connection from your site.

  1. Click Disconnect
  2. Confirm the action in the popup
  3. Your feed will no longer display until reconnected

Frontend Display

Where the Feed Appears

The Instagram feed appears on your homepage (and other configured pages) as a carousel slider showing your latest posts.

What's Displayed

Each post in the feed shows:

  • 📷 Image — The post image (or thumbnail for videos)
  • ❤️ Like Count — Number of likes
  • 💬 Comment Count — Number of comments
  • 📝 Caption — The post caption text
  • 🔗 Link — Clicking opens the post on Instagram

Customizing the Title

To change the feed section title:

  1. Go to Site Settings
  2. Find the Global Blocks section
  3. Open the Our Instagram tab
  4. Update the Title field
  5. Save changes

Troubleshooting

Feed Not Displaying

IssueSolution
Section completely missingCheck if Instagram is connected in Settings
"Not Connected" statusClick Connect Instagram Account
Connected but no postsClick Refresh Cache, ensure account has public posts

Connection Issues

IssueSolution
OAuth error during connectionEnsure you're logged into the correct Facebook account
"No Instagram accounts found"Verify your Instagram is linked to a Facebook Page
"Invalid state parameter"Start the connection process again from Settings
Permissions errorDisconnect and reconnect, granting all permissions

Token Issues

IssueSolution
Token expiredDisconnect and reconnect your account
Token expiring soon warningClick Refresh Token
Refresh token failedThe token may have already expired; reconnect

API Issues

IssueSolution
"Cache refreshed but no posts found"Verify the Instagram account has public posts
API error messagesUse Test API Connection to diagnose
Rate limit errorsWait and try again later; cached data will display

Debug Tools

For troubleshooting, administrators can use the Test API Connection button in the API Information section:

This test checks:

  1. Token Validity — Confirms your access token is valid and shows granted permissions
  2. Account Access — Verifies we can access your Instagram account details
  3. Media Retrieval — Tests fetching posts from your account

Technical Details

Caching

  • Feed data is cached for 1 hour to minimize API calls
  • Cache refreshes automatically when expired
  • Manual refresh available via Refresh Cache button
  • If API fails, cached data is used as fallback

Token Lifecycle

  • Access tokens are valid for 60 days
  • Tokens can be refreshed before expiration
  • Automatic refresh is attempted when within 7 days of expiry
  • Expired tokens require reconnection

API Version

The integration uses Facebook Graph API v21.0. This version is displayed in the API Information section of your settings.


Security

Data Storage

  • Access tokens are stored securely in our database
  • Each subsite stores its own credentials separately
  • Tokens are never exposed in frontend code

Permission Model

  • Only Globber admins and local admins can manage the Instagram connection
  • All actions are protected by WordPress nonces
  • OAuth flow includes state validation for CSRF protection

FAQ

Can I connect a personal Instagram account?

No, only Business or Creator accounts are supported. This is a requirement of the Instagram Graph API.

How often does the feed update?

The feed cache refreshes every hour automatically. You can also manually refresh at any time.

Will my feed show Stories or Reels?

Currently, only standard feed posts are displayed. Stories and Reels are not included.

What happens if my token expires?

Your feed will continue showing cached posts. You'll see a warning in the admin to reconnect your account.

Can I display feeds from multiple Instagram accounts on one site?

No, each site can only connect one Instagram account at a time.

Does this work with Instagram's Basic Display API?

No, this integration uses the Instagram Graph API via Facebook, which provides more features and reliability.


Support

If you encounter issues not covered in this documentation:

  1. Use the Test API Connection tool to gather diagnostic information
  2. Check the error messages displayed in the admin
  3. Contact Globber Admin with the error details