Title: Header Junk Remover
Author: Joseph Brzezowski
Published: <strong>September 4, 2025</strong>
Last modified: September 26, 2025

---

Search plugins

![](https://ps.w.org/junk-header-remover/assets/banner-772x250.png?rev=3357978)

![](https://ps.w.org/junk-header-remover/assets/icon-256x256.png?rev=3355992)

# Header Junk Remover

 By [Joseph Brzezowski](https://profiles.wordpress.org/thedeafjoe/)

[Download](https://downloads.wordpress.org/plugin/junk-header-remover.1.0.2.zip)

 * [Details](https://wordpress.org/plugins/junk-header-remover/#description)
 * [Reviews](https://wordpress.org/plugins/junk-header-remover/#reviews)
 *  [Installation](https://wordpress.org/plugins/junk-header-remover/#installation)
 * [Development](https://wordpress.org/plugins/junk-header-remover/#developers)

 [Support](https://wordpress.org/support/plugin/junk-header-remover/)

## Description

Header Junk Remover is a lightweight, no-settings plugin that cleans up the `<head
>` section and headers of your WordPress site.

It removes outdated tags, redundant links, bloated scripts, and unnecessary headers
that WordPress adds by default. The result: cleaner source code, faster page loads,
less information leakage, and fewer HTTP requests.

**What gets removed (and why it matters):**

 * **RSD Link**
    remove_action(‘wp_head’, ‘rsd_link’); Used for Really Simple Discovery(
   old remote editing). Not needed anymore.
 * **WordPress Generator**
    remove_action(‘wp_head’, ‘wp_generator’); Hides your
   WP version. Avoids advertising it to bots/hackers.
 * **Feed Links**
    remove_action(‘wp_head’, ‘feed_links’, 2); remove_action(‘wp_head’,‘
   feed_links_extra’, 3); Removes auto-added RSS/Atom feed links. If you don’t use
   feeds, these are pointless.
 * **Relational Links (index, start, parent, adjacent posts)**
    remove_action(‘wp_head’,‘
   index_rel_link’); remove_action(‘wp_head’, ‘start_post_rel_link’, 10, 0); remove_action(‘
   wp_head’, ‘parent_post_rel_link’, 10, 0); remove_action(‘wp_head’, ‘adjacent_posts_rel_link’,
   10, 0); remove_action(‘wp_head’, ‘adjacent_posts_rel_link_wp_head’, 10, 0); Removes
   old “previous/next” link metadata almost no browsers or crawlers use.
 * **Windows Live Writer Manifest**
    remove_action(‘wp_head’, ‘wlwmanifest_link’);
   Dead tool support. Safe to remove.
 * **Shortlink Tags/Headers**
    remove_action(‘wp_head’, ‘wp_shortlink_wp_head’, 
   10, 0); remove_action(‘template_redirect’, ‘wp_shortlink_header’, 11); Shortlink
   system is obsolete. Removing reduces clutter.
 * **REST API Discovery Link**
    remove_action(‘wp_head’, ‘rest_output_link_wp_head’,
   10); REST API still works, but no longer broadcast in headers.
 * **oEmbed Discovery + Scripts**
    remove_action(‘wp_head’, ‘wp_oembed_add_discovery_links’,
   10); remove_action(‘wp_head’, ‘wp_oembed_add_host_js’); Prevents WordPress from
   advertising oEmbed endpoints and loading extra JS.
 * **Resource Hints (dns-prefetch, preconnect)**
    remove_action(‘wp_head’, ‘wp_resource_hints’,
   2); Stops WP from auto-inserting DNS hints you may not control.
 * **Emoji Scripts and Styles**
    remove_action(‘wp_head’, ‘print_emoji_detection_script’,
   7); remove_action(‘wp_print_styles’, ‘print_emoji_styles’); Removes redundant
   emoji JS/CSS. Browsers already handle emojis natively.
 * **Global Styles (Block Editor/Gutenberg)**
    remove_action(‘wp_head’, ‘wp_enqueue_global_styles’,
   1); Prevents WP from injecting default CSS that bloats your source.

**Extra Hardening:**

 * **Disable XML-RPC**
    add_filter(‘xmlrpc_enabled’, ‘__return_false’); Blocks XML-
   RPC protocol (commonly abused in brute force/DDoS attacks).
 * **Remove X-Pingback Header**
    add_filter(‘wp_headers’, function($headers) { unset(
   $headers[‘X-Pingback’]); return $headers; }); Stops WP from advertising its pingback
   URL.
 * **Turn off PHP Exposure (optional)**
    @ini_set(‘expose_php’, ‘off’); Prevents
   PHP version disclosure in server headers.

**Why this matters:**

 * Less clutter in your `<head>`
 * Fewer HTTP requests and faster load times
 * Less information leakage for bots/hackers
 * Cleaner source code when you “View Source”
 * Safer defaults without touching your theme files

If you find this plugin useful, consider supporting my work:
 👉 [Buy Me a Coffee](https://buymeacoffee.com/avocadowebservices)

## Installation

 1. Upload the plugin files to `/wp-content/plugins/header-junk-remover`, or install
    via the WordPress Plugins screen.
 2. Activate the plugin.
 3. Done — no settings required.

## FAQ

### Will this break my theme or plugins?

No. These removals are optional extras. Your site runs fine without them.

### Can I keep some of these features?

Yes. Open the plugin PHP file and comment out any `remove_action` or `add_filter`
line you want to keep.

### Does this affect RSS feeds?

It removes the auto-advertised feed links. If you need feeds, just comment those
lines out — feeds themselves still exist.

### How can I support this plugin?

If this plugin saves you time or helps clean up your site, you can support development
here:
 [https://buymeacoffee.com/avocadowebservices](https://buymeacoffee.com/avocadowebservices)

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Header Junk Remover” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Joseph Brzezowski ](https://profiles.wordpress.org/thedeafjoe/)

[Translate “Header Junk Remover” into your language.](https://translate.wordpress.org/projects/wp-plugins/junk-header-remover)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/junk-header-remover/),
check out the [SVN repository](https://plugins.svn.wordpress.org/junk-header-remover/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/junk-header-remover/)
by [RSS](https://plugins.trac.wordpress.org/log/junk-header-remover/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.2

 * Added support/donate link (Buy Me a Coffee).
 * Documentation updated.

#### 1.0.1

 * Initial public release.
 * Removed generator, RSD link, WLW manifest, shortlink, REST API link, emoji scripts/
   styles, relational links, oEmbed, resource hints, global styles.
 * Added security hardening: disable XML-RPC, remove X-Pingback, disable PHP expose.

## Meta

 *  Version **1.0.1**
 *  Last updated **7 months ago**
 *  Active installations **10+**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **6.8.5**
 * Tags
 * [header](https://wordpress.org/plugins/tags/header/)[junk](https://wordpress.org/plugins/tags/junk/)
   [optimization](https://wordpress.org/plugins/tags/optimization/)[performance](https://wordpress.org/plugins/tags/performance/)
   [speed](https://wordpress.org/plugins/tags/speed/)
 *  [Advanced View](https://wordpress.org/plugins/junk-header-remover/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/junk-header-remover/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/junk-header-remover/reviews/)

## Contributors

 *   [ Joseph Brzezowski ](https://profiles.wordpress.org/thedeafjoe/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/junk-header-remover/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://buymeacoffee.com/avocadowebservices)