Speedora is a free, all-in-one speed plugin. It caches pages, minifies HTML/CSS/JS, lazy-loads media, converts images to WebP, and removes unused WordPress baggage. Settings are grouped by feature, and child options stay locked until their parent is enabled.
Do not run Speedora page cache together with another page-cache plugin (WP Super Cache, W3 Total Cache, LiteSpeed Cache, and similar). Use one page cache at a time.
Page caching
- File-based full-page cache for guests (optional cache for logged-in users)
- Separate cache files for mobile/desktop and for Polylang/WPML languages
- Cache lifetime, automatic purge on update, and smart purge of the changed URL
- Cache preload for homepage, sitemap URLs, and newly published posts
- Skip URLs with query strings (tracking parameters such as utm_source are allowed)
- Never-cache list (path fragments such as /cart/)
- WooCommerce: do not cache cart, checkout, or account pages
- Cache hits send the X-Speedora-Cache header
Browser cache and gzip
- Cache-Control, ETag, and Last-Modified on HTML when page cache is off
- Apache .htaccess expires for CSS, JS, images, and fonts
- Apache gzip/deflate for HTML, CSS, JS, and SVG
- Rules are written with WordPress insert_with_markers (marker: Speedora)
HTML, CSS, and JavaScript
- Minify HTML (whitespace, comments, optional inline CSS/JS)
- Minify local CSS and JS into copies under uploads (skips wp-includes)
- Exclusion lists by handle or filename
- Load CSS asynchronously, unload listed stylesheets, optional critical CSS
- Remove ?ver= from asset URLs
- Defer or async JS (jQuery is never deferred)
- Delay JS until first interaction (overrides defer/async while enabled)
Images and video
- Lazy load images and iframes
- Priority-load the first content image (LCP) and decoding="async"
- WebP conversion on upload (PHP GD with WebP) and serve .webp when the file exists
- Optional lossy WebP quality
- Resize oversized originals to a maximum width
- YouTube click-to-play: thumbnail until the visitor clicks
Fonts, DNS, and CDN
- Google Fonts display=swap
- Host Google Fonts locally (downloads CSS and woff2 into uploads)
- Optional font preload URLs and lazy-load of Google Fonts stylesheets
- DNS prefetch, preconnect, and hero-image preload
- Instant internal-link prefetch (Chrome Speculation Rules)
- CDN URL rewriting for wp-content and wp-includes
- Optional Cloudflare cache purge (API token + zone ID)
WordPress, WooCommerce, and database
- Remove emoji, wp-embed, Dashicons (guests), generator tag, shortlink, REST discovery links
- Optional: disable RSS, XML-RPC, comments, jQuery Migrate, file editor
- Heartbeat interval and disable Heartbeat on the public site
- Delay Analytics, Ads, Meta pixel, YouTube, Maps, and chat widgets until interaction
- WooCommerce: disable cart fragments and shop CSS/JS off shop pages
- Database cleanup: revisions, drafts, trash, spam, transients, OPTIMIZE TABLE
- Limit how many revisions WordPress stores going forward
- WP-Cron schedules for cache cleanup, DB cleanup, image optimize, and preload
- Safe mode turns every optimization off without wiping settings
Admin tools
- Settings tabs: Caching, HTML, CSS, JavaScript, Images, Network, Database, WordPress, Core Web Vitals, Automation
- Dependent options (greyed out until the parent is on)
- Diagnostics score and recommendations
- Tools: clear cache, one-click DB cleanup, batch images, import/export, reset
- Per-post/page CSS and JS unload meta box
- Admin bar: clear cache
- Upload the
speedora-total-website-speed-optimization folder to /wp-content/plugins/.
- Activate Speedora Total Website Speed Optimization.
- Open Speed Optimizer in the admin menu.
- Keep the Balanced defaults, or turn features on tab by tab.
- Visit the site once so page cache can store HTML. Check the
X-Speedora-Cache response header (MISS then HIT).
- Optional: Speed Optimizer → Tools to clean the database or batch-optimize images.
- Optional: Diagnostics for a configuration score and tips.
Apache (including WAMP): open wp-admin or save settings so gzip/expires rules are written to
.htaccess.