What It Does
Frontend Optimizer is a straightforward set of on/off switches for well-known WordPress performance and security tweaks. It defers JavaScript loading, removes jQuery Migrate, strips out emoji scripts, cleans unnecessary tags from wp_head, disables XML-RPC, and removes version query strings from assets. Each optimization is a single toggle — no configuration needed. This is not a full caching or minification solution; it handles the quick wins that most performance guides recommend.
Features
- Defer JavaScript — adds the defer attribute to all enqueued scripts (except jQuery core, which must load synchronously)
- Move scripts to footer — forces scripts to load at the bottom of the page instead of the head
- Remove jQuery Migrate — drops the jQuery Migrate compatibility layer on the frontend (safe for most modern sites)
- Remove Dashicons CSS — dequeues the Dashicons stylesheet for logged-out visitors (saves ~46KB)
- Remove WordPress emoji scripts — disables the emoji detection script and related DNS prefetch (saves two HTTP requests)
- Remove WordPress generator meta tag — hides WordPress version from page source for security
- Remove RSD link — removes Really Simple Discovery link from wp_head (used by XML-RPC clients)
- Remove WLW manifest link — removes Windows Live Writer manifest link
- Remove shortlink — removes the shortlink tag and HTTP header
- Remove REST API link — removes the REST API discovery link from wp_head and HTTP headers
- Remove oEmbed discovery links — removes oEmbed-related tags from wp_head
- Remove version query strings — strips ?ver= parameters from CSS and JS URLs for better caching
- Disable XML-RPC — completely disables the XML-RPC endpoint and removes all its methods (security hardening)
How to Use
-
Enable the module
Toggle on "Frontend Optimizer" in the WP Multitool dashboard.
-
Open the settings page
Go to WP Multitool > Frontend Optimizer. You will see a list of toggle switches, one for each optimization.
-
Enable individual optimizations
Toggle on the optimizations you want. Most are safe for most sites. The "Defer Scripts" toggle is the main performance feature — enable it first and test your site.
-
Test your site
After enabling optimizations, check your frontend for broken JavaScript (especially if you enabled defer or removed jQuery Migrate). Open browser dev tools console and look for errors.
Settings
| Setting | Default | Description |
|---|---|---|
| Defer Scripts | Off |
Adds defer attribute to all scripts except jQuery core. May break plugins that rely on inline scripts loading in order. |
| Remove jQuery Migrate | On |
Removes jQuery Migrate on the frontend. Safe for sites using modern jQuery, but older plugins may need it. |
| Remove Dashicons | On |
Removes Dashicons CSS for logged-out visitors. The admin bar uses Dashicons, so it only applies to non-logged-in users. |
| Remove Generator Tag | On |
Hides the WordPress version meta tag from your page source. |
| Remove RSD Link | On |
Removes the Really Simple Discovery link. Only needed if you use XML-RPC blog clients. |
| Remove WLW Manifest | On |
Removes the Windows Live Writer manifest link. WLW is discontinued. |
| Remove Shortlink | On |
Removes the shortlink tag and HTTP header from pages. |
| Remove REST API Link | On |
Removes the REST API link from wp_head. Does not disable the REST API itself. |
| Remove oEmbed | On |
Removes oEmbed discovery links. Does not disable oEmbed embedding functionality. |
| Remove Emoji Scripts | On |
Removes the emoji detection script and DNS prefetch. Emojis still work — browsers render them natively. |
| Remove Version Strings | On |
Strips ?ver= from CSS and JS URLs. Improves caching but may cause stale cache issues after plugin updates. |
| Disable XML-RPC | On |
Completely disables XML-RPC. Do not enable if you use the WordPress mobile app, Jetpack, or XML-RPC-based services. |
FAQ
I enabled "Defer Scripts" and my site broke. What happened?
Some plugins and themes rely on scripts loading in a specific order in the document head. Deferring changes when scripts execute. Disable "Defer Scripts" to fix it immediately. jQuery core is never deferred (it is in the exclude list), but plugins that depend on inline scripts in the body may still break.
Is it safe to remove jQuery Migrate?
For most modern sites, yes. jQuery Migrate provides backwards compatibility for old jQuery APIs. If your theme or plugins were built in the last few years, they likely do not need it. If you see jQuery errors in your browser console after enabling this, turn it back off.
Will removing emoji scripts break emoji display?
No. Modern browsers render emojis natively. The WordPress emoji script is a polyfill for very old browsers. Removing it saves two HTTP requests and a DNS prefetch.
I already use WP Rocket / Autoptimize. Do I need this?
Probably not for the performance features — caching plugins handle deferring and minification better. But the wp_head cleanup and XML-RPC disabling features are useful regardless. Just avoid enabling the same optimizations in both plugins to prevent conflicts.
Does disabling XML-RPC affect the WordPress mobile app?
Yes. The WordPress mobile app uses XML-RPC. If you use it, do not disable XML-RPC. Same applies if you use Jetpack or any service that connects via XML-RPC.
Ready to optimize your WordPress site?
Join developers using WP Multitool to debug, optimize, and maintain WordPress.
Get WP Multitool