Skip to content
NewProduct Q&A: shoppers ask on your product page and get your answers.See how it works
IdukkiIdukki
Strategy

How to Embed an Instagram Feed on WooCommerce (Step-by-Step)

How to add a shoppable Instagram feed to a WooCommerce store: connecting WooCommerce's REST API, placing the embed with a Custom HTML block or the Site Editor's Single Product template, what Instagram's API changes mean, and the WordPress-specific faults (sanitised scripts, optimisation plugins) that break feeds.

In this article

WordPress gives you more ways to place an embed than any hosted platform, which is both the appeal and the problem. The same Instagram feed can be added through a block, a template, a page builder or a PHP hook, and each has a different failure mode. This guide picks the right route for your theme, connects the catalogue so the feed is shoppable, and covers the WordPress-specific faults.

Choose your placement route

Where should the embed code go?

Start here

Is your theme a block theme (does Appearance › Editor exist)?

  • Yes, block theme

    Use the Site Editor

    Add a Custom HTML block to a page, or edit the Single Product template to show a feed on product pages.

    • Feed on every product page: Edit the Single Product template and add a Custom HTML block below the product summary.
    • Feed on one product only: Create a Single Item: Product template for that product and add the block there.
  • No, classic theme

    Use blocks in content, or a hook

    Add a Custom HTML block to pages and posts. For product templates, use your page builder's HTML element or a hook in a child theme.

    • You use a page builder: Use its HTML or code element on the page or product template it controls.
    • No page builder: Ask a developer to output the embed from a WooCommerce single-product hook in a child theme.

WooCommerce's documentation is clear on the split: with a block theme you edit templates, including the Single Product template, visually in the Site Editor; with a classic theme you can use blocks in posts and pages but you don't get the Site Editor for shop templates. To create a template for one product, WooCommerce's steps are Appearance › Editor, Templates, add new, then "Single Item: Product" and choose the product.

Step by step with Idukki

Instagram feed on WooCommerce

  1. 01

    Create REST API keys

    In WordPress, go to WooCommerce › Settings › Advanced › REST API and add a key. Read access covers catalogue sync.

  2. 02

    Connect WooCommerce

    In Idukki's settings, open the WooCommerce integration, enter your store URL and connect using the dashboard's pairing option or the consumer key and secret.

  3. 03

    Import products

    In the Products area, choose the WooCommerce import so your catalogue is available for tagging.

  4. 04

    Add Instagram and tag

    Add Instagram as a source, curate a collection and tag the products that appear in each post.

  5. 05

    Paste the embed code

    Copy the embed code from the collection's publish step into a Custom HTML block or your chosen template, then update and check the live page.

WooCommerce and WordPress menu names from their official documentation.

WooCommerce's REST API keys come in Read, Write or Read/Write permission levels. Give any integration the least access it needs, and revoke keys you no longer use from the same screen. Tag one to three products per post, the ones actually visible; AI tagging can suggest matches, but check them before publishing. If you run several collections on one page (a homepage gallery and a reels strip, say), the embed code checks whether the Idukki loader is already present before adding it, so the script loads once.

The WordPress catch: who can save a script

WordPress's documentation for the Custom HTML block explains that for users without the unfiltered_html capability (for example, a Contributor), WordPress sanitises the block's content and strips disallowed tags such as <script> and <iframe> when the post is saved. On a single-site install, Administrators and Editors have it by default and Authors and Contributors don't; WordPress's roles documentation notes that on multisite only Super Admins have it. The practical risk: an Administrator adds the feed, someone with a lower role later fixes a typo on the same page, and the script is quietly removed on save.

The Instagram side

Meta switched off the Instagram Basic Display API on 4 December 2024 and directed developers to the Instagram API with Facebook Login or the Instagram API with Instagram Login, which Meta describes as for "Instagram professionals: businesses and creators". Many WordPress Instagram plugins were built on the retired API, so if yours froze that month, convert to a business or creator account and reconnect through a tool on the current API. Showing a customer's post also needs their permission; see collecting UGC legally from Instagram and TikTok and Instagram rights request templates.

Performance on WordPress

Add data-ugc-lazy="1" to the placeholder element in the embed code for feeds below the fold; the widget then waits until the placeholder is near the viewport before mounting. Wrap the embed in a div with a min-height so the page doesn't jump when images load (Google's good threshold for Cumulative Layout Shift is 0.1 or less). Then check your caching or optimisation plugin: settings that delay, defer or combine JavaScript can hold the widget back until the visitor interacts, or break its loader. Exclude it, clear the cache, and test logged out. Core Web Vitals and UGC widgets covers the before-and-after measurement.

Troubleshooting

SymptomLikely causeFix
Feed vanished after someone edited the pageScript stripped on save by a user without unfiltered_htmlRe-add it as an Administrator; move the embed into a template or synced pattern.
Works when logged in, not for visitorsPage cache or JavaScript optimisationExclude the feed script from delay/combine, purge the cache, test in a private window.
Preview fine, broken layout on the live themeTheme CSS constraining the containerPlace the block in a full-width group or adjust the theme's content width.
Connection to WooCommerce failsWrong store URL or revoked keyUse the site root URL without a trailing slash; generate a fresh key.
Products missing when taggingCatalogue not importedRun the WooCommerce import in the Products area again.
Feed stopped updating in December 2024Plugin relied on the retired Basic Display APISwitch to a business or creator account and reconnect.
Common WooCommerce faults and fixes

FAQs

  • How do I add an Instagram feed to WooCommerce without a plugin?

    Paste the embed code from your feed provider into a Custom HTML block on a page, or into the Single Product template via Appearance › Editor on a block theme. You need an account with the unfiltered_html capability for the script to be saved.

  • Can I show an Instagram feed on WooCommerce product pages?

    Yes. On a block theme, edit the Single Product template in the Site Editor. On a classic theme, use your page builder's product template or a developer-added hook.

  • Why did my WordPress Instagram feed stop working?

    Most often because the plugin used Meta's Basic Display API, switched off on 4 December 2024. Reconnect with a business or creator account through a plugin or service on the current API.

  • Do I need a business account for an Instagram feed on WordPress?

    For any tool using Meta's official API, yes. The supported APIs are built for professional (business and creator) accounts.

  • Will an Instagram feed slow down my WooCommerce store?

    It shouldn't if it lazy-loads below the fold and has reserved space. Measure with PageSpeed Insights before and after, logged out.

Sources

  1. 1WordPress.org Documentation: Custom HTML block · Users without unfiltered_html have script and iframe tags stripped on save
  2. 2WordPress.org Documentation: Roles and capabilities · unfiltered_html; only Super Admins have it on multisite
  3. 3WooCommerce: Customizing your product pages · Single Product template; creating a template for one product
  4. 4WooCommerce: Using blocks in WooCommerce · Block themes edit templates in Appearance › Editor; classic themes don't get the Site Editor
  5. 5WooCommerce: REST API documentation · Generating keys; Read, Write, Read/Write permissions
  6. 6Meta for Developers: Update on Instagram Basic Display API · Unavailable from 4 December 2024
  7. 7web.dev: Cumulative Layout Shift (CLS) · Good CLS threshold of 0.1 or less
#WooCommerce#Instagram#How-to#UGC

Continue reading

1 piece in this cluster

These long-form pieces on the Idukki blog link back to this article, go deeper on the cluster.

More from Rohin Aggarwal