WP Manifestindependent plugin directory
manifest / media / nx2-steam-embed

Steam Store Embed

A small WordPress plugin that turns a pasted Steam store URL into Steam's official embeddable game widget (cover art, description, price).

★ 0stars

Install

Download source zip No release zip yet

This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.

Install straight from GitHub with WP-CLI:

wp plugin install https://github.com/neutralx2/nx2-steam-embed/archive/refs/heads/main.zip
No built-in updater. New versions won't appear under Dashboard → Updates. Install new releases yourself, or let Git Updater track the repository.

A small WordPress plugin that turns a pasted Steam store URL into Steam's official embeddable game widget (cover art, description, price).

What it does

Paste a link to a game's Steam store page on its own line in a post, e.g.:

https://store.steampowered.com/app/570/Dota_2/

and the plugin replaces it with an iframe showing Steam's widget for that app:

<iframe class="steamstore" src="https://store.steampowered.com/widget/570/" width="100%" height="190" frameborder="0" scrolling="no"></iframe>

It works by registering a custom embed handler with wp_embed_register_handler(), WordPress's built-in mechanism for turning bare URLs into rich content (the same system used for YouTube, Twitter, etc.). The plugin matches any store.steampowered.com/app/{id}/... URL, pulls out the numeric app ID, and builds the widget iframe from it — no API calls or external requests involved.

Usage

Plain URL (recommended)

In the editor, put the Steam store URL on its own line/paragraph:

https://store.steampowered.com/app/570/Dota_2/

This works in both the block editor (as a Paragraph or Embed block) and the classic editor. The widget renders at width="100%", so it fills whatever column it's placed in — post content, a narrower sidebar widget area, etc.

Custom width

To force a specific pixel width instead of the fluid 100% default, wrap the URL in WordPress's built-in [embed] shortcode with a width attribute:

[embed width="400"]https://store.steampowered.com/app/570/Dota_2/[/embed]

Type this directly into a paragraph, or use the block editor's Shortcode block. Only width is configurable — height is fixed at 190 to match the actual height of Steam's widget content; overriding it either clips the widget (too short) or leaves dead space below it (too tall), so it's intentionally not exposed.

If the URL inside [embed]...[/embed] doesn't match a Steam store page, WordPress just falls back to its normal embed/link behavior — there's no error state to worry about.

Notes

  • Only store.steampowered.com/app/{id}/ URLs are matched; other Steam URLs (search, tags, developer pages, etc.) are left alone.
  • The generated markup is filterable via the embed_steamstore filter ($embed, $matches, $attr, $url, $rawattr) if you need to customize it further from a theme or another plugin.
  • Requires no configuration, settings page, or activation steps — installing and activating the plugin is enough.