Disable Embeds removes WordPress’s automatic oEmbed system, the feature that turns a pasted URL into an embedded YouTube video, tweet, or similar widget. The result is a smaller front-end, fewer third-party requests, and one less surface for tracking.
What this feature does
WordPress automatically detects URLs you paste into a post and replaces them with embedded content from the source. It also exposes its own oEmbed endpoint at /wp-json/oembed/1.0/embed so other sites can do the same with content from yours.
This setting removes the entire oEmbed system from your site:
- Pasted URLs are no longer auto-converted into embeds.
- Your site no longer broadcasts the oEmbed discovery link in
<head>. - The
wp-embedJavaScript is dequeued, removing a small script from every page. - The
/wp-json/oembed/…REST endpoints are removed. - The
shortcode and TinyMCE plugin are removed.
Embeds make external HTTP requests on render and load third-party scripts (Google’s analytics on YouTube, Twitter’s tracking pixels, etc.). Disabling embeds keeps your site self-contained and removes a chunk of third-party tracking from your front-end.
How to enable it
- Open AdminEase › Security. Click AdminEase in the WordPress admin menu, then switch to the Security tab.
- Toggle Disable embeds on. Save settings. The change applies immediately on the front-end.
-
Verify.
View source on a page that previously used the
shortcode or auto-embedded a URL. The embed should now appear as a plain link instead of an iframe.
Settings reference
| Setting | What it does | Default |
|---|---|---|
| Disable embeds | Removes WordPress’s oEmbed actions, filters, REST endpoints, TinyMCE plugin, and front-end script. | Off |
What happens behind the scenes
AdminEase removes several WordPress core hooks and filters:
rest_api_init›wp_oembed_register_route(the REST endpoint)wp_head›wp_oembed_add_discovery_links(the discovery<link>)wp_head›wp_oembed_add_host_js(the JS responsible for sizing embeds)template_redirect›rest_output_link_header(the discoveryLinkheader)oembed_dataparseandpre_oembed_resultfilters
It also forces embed_oembed_discover to false, removes the embed query var, drops the wpembed TinyMCE plugin, and dequeues the wp-embed script.
Troubleshooting
An existing video embed disappeared from a post
Expected. The embed reverts to the original URL because there’s no longer a parser to convert it. To restore the video, paste the embed code from the source provider directly (e.g. YouTube’s “Share › Embed” iframe).
I want to keep some embeds but not others
This setting is all-or-nothing. For granular control, leave embeds enabled and use a privacy-friendly embed plugin that lazy-loads embeds only on user click.
I’m using the block editor and the embed block stopped working
Expected. The block editor’s embed block depends on WordPress’s oEmbed system. If you need it, leave this setting off and consider a content-security-policy / lazy-load approach for tracking concerns instead.
My RSS feed lost a previously-embedded item
Same root cause: the parser is gone. RSS feeds use the same oEmbed system. Re-render the embeds as plain <a> links or paste provider iframes manually if you need them in feeds.
