{
  "id": 9526081,
  "title": "A practical walkthrough of real-world WordPress performance optimizations",
  "url": "https://urgent.news/2026/09/24/a-practical-walkthrough-of-real-world-wordpress-performance",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-24T08:49:02.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/abbeymaniak/a-practical-walkthrough-of-real-world-wordpress-performance-optimizations-46fm"
  },
  "original_language": "en",
  "account": "When a WordPress site receives a low mobile or desktop score from performance testing tools like Google PageSpeed Insights or Lighthouse, warnings such as \"Eliminate render-blocking resources\", \"Reduce unused JavaScript\", and \"Serve static assets with an efficient cache policy\" are frequent. Developers often believe the solution is installing another caching plugin, but true performance improvements stem from optimizing the core theme. This article outlines a step-by-step process to achieve significant performance gains on a sample WordPress site.\n\nThe initial audit revealed several common issues causing performance problems:\n\n1. Gutenberg editor dependencies leaking to the frontend, loading unnecessary React libraries and causing heavy JavaScript bloat.\n2. Dynamic timestamps in styles and scripts, disabling browser and CDN caching.\n3. Synchronous web font loading via CSS @import declarations, blocking the critical rendering path.\n4. Synchronous jQuery and jquery-migrate scripts blocking the rendering path.\n5. Loading heavy plugin assets globally across pages, regardless of usage.\n\nTo address these issues, the following steps were taken:\n\n1. Strip Gutenberg admin dependencies from frontend block scripts. Only include necessary frontend dependencies like jQuery, avoiding the heavy editor packages (wp-blocks, wp-element, wp-editor, wp-components).\n2. Replace dynamic timestamp versioning with a centralized, static theme version constant. Increment this version number only when updating the site. This allows browsers to cache assets indefinitely and only re-fetch them upon deployment of new versions.\n3. Eliminate CSS @import declarations and use modern font loading techniques. Remove @import url(...) rules, add preconnect hints in functions.php to resolve DNS and TLS handshakes early, and enqueue fonts centrally with display=swap to prevent Flash of Invisible Text (FOIT).\n4. Defer jQuery loading and remove the deprecated jquery-migrate plugin. Instead, use vanilla JavaScript where possible or jQuery 3.6+ for modern features.\n\nBy implementing these optimizations, unnecessary megabytes of scripts were trimmed, render-blocking delays eliminated, and WordPress asset delivery streamlined. This resulted in substantial performance improvements, reducing the site's score from a frustrating 30–40 to a much higher value.",
  "summary": "When running a Google PageSpeed Insights or Lighthouse audit on a custom WordPress website, seeing a low mobile / desktop score (such as 30–40) alongside warnings like \"Eliminate render-blocking resources\" , \"Reduce unused JavaScript\" , and \"Serve static assets with an efficient cache policy\" is frustratingly common. Many developers assume the only remedy is installing another heavyweight caching…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}