Key facts at a glance
WordPress repair in 2026
Last updated
- Most painful recent breakage
- WordPress 6.9, released December 2, 2025, is stable and compatible with PHP up to 8.5. It removed long-deprecated code, including Flash scripts and legacy internals, which broke older plugins on launch day. WooCommerce, Yoast SEO, and Elementor were patched within days. The new Abilities API is additive and did not cause the breakage.
- Most common WordPress error in 2026
- "There has been a critical error on this website." The friendly display of a PHP fatal error introduced in WordPress 5.2. The actual cause is hidden until you check the admin recovery email or enable
WP_DEBUGin wp-config. - WordPress market footprint
- Roughly 40 percent of all sites on the web run on WordPress. Most repairs are not "is WordPress broken," they are "this specific plugin or theme is incompatible with this WordPress version, this PHP version, or this hosting environment."
- What we fix and price range
- Plugin conflicts, theme errors, critical errors, white screen of death, malware and hack recovery, failed updates, login lockouts, WooCommerce HPOS migration issues, slow loading, mobile display bugs, form notification failures. Flat $49 to $149 per fix.
- Turnaround and guarantee
- 2-hour fix guarantee from quote acceptance. Most repairs complete in 60 to 90 minutes of active work. Full money back if we cannot fix the issue within the window. No hourly billing, no scope creep, no scheduling delays.
- What WordPress repair usually is not
- It is rarely "reinstall WordPress." It is almost always conflict isolation, version pinning, or a platform-specific workaround. We diagnose first, then apply the smallest change that restores the site. Reinstalling WordPress on a hacked site without identifying the entry vector reinfects within hours.
Source: WordPress.org release notes and support forum, plugin vendor changelogs for WooCommerce, Yoast SEO, and Elementor, PHP.net supported-versions documentation, and our hands-on repairs across thousands of WordPress sites. Get a quote in 60 seconds →
What is breaking on WordPress in 2026
The WordPress maintenance bar has gotten harder in the last twelve months. Three forces are stacking. WordPress 6.9 shipped on December 2, 2025 and removed a batch of long-deprecated code, including all remaining Flash support such as the swfupload and swfobject scripts, legacy Internet Explorer code, and deprecated internals around older menu walkers, classic widgets, media modals, and the customizer. Any plugin or theme still calling that retired code threw a fatal the moment the update applied. WooCommerce checkout broke on some setups, Yoast SEO sitemaps returned 404s, and the Elementor editor failed to load, all on launch day, before the vendors shipped patches. The release also added the Abilities API, a new and backward-compatible registry for declaring site capabilities, but despite the early commentary that feature is additive and was not the cause of the breakage.
PHP 8.4, released in late 2024 and now in widespread hosting rollout, deprecated language patterns that older plugins still use. Hosting providers that pushed PHP 8.4 as the default in 2025 created a second wave of compatibility failures distinct from the WordPress 6.9 cluster. Sites where the host upgraded PHP without an audit of the plugin footprint started returning fatal errors that the admin dashboard cannot recover from.
Auto-updates compound both. WordPress core, plugins, and translation files auto-update by default. A site that ran fine on Tuesday can be returning a critical-error message on Wednesday morning with no human touching it. The site owner did not change anything. WordPress, the plugin author, or the host did. The diagnostic flow has to start from the assumption that recent change caused the failure, then narrow to which change.
- Late 2024: PHP 8.4 released. Older plugins begin to deprecate visibly on hosts that rolled it out as the default.
- December 2, 2025: WordPress 6.9 released. It removed long-deprecated code, and WooCommerce checkout, Yoast SEO sitemaps, and the Elementor editor all broke on launch day before patches shipped.
- December 2025 to April 2026: Major plugin vendors ship compatibility patches in waves. Less-maintained plugins go silent and become abandonware.
- April 14, 2026: WooCommerce 10.7 disables HPOS sync-on-read by default, silently breaking custom integrations that wrote orders to
wp_postmeta. - 2026 ongoing: Sites still surfacing post-6.9 issues as obscure plugin combinations finally hit the path that fails.
Match your symptom to the fix
Pick the row that matches what you are seeing. Each one links to the diagnostic flow for that specific failure pattern.
| Symptom | Likely cause and fix |
|---|---|
| "There has been a critical error on this website" message after a recent update | A PHP fatal error in a plugin or theme. The recovery email tells you which plugin to blame. Most commonly a plugin not yet compatible with WordPress 6.9 or PHP 8.4. |
| Site loads a blank white page with no error message at all | Pre-WordPress-5.2 fatal-error display, or fatal_error_handler disabled. Same root cause class as the critical error message but the friendly display is suppressed. |
| A theme update or switch broke the site, the theme will not activate, or an old theme broke on PHP 8 | A PHP fatal in the theme code, the wrong theme zip from a marketplace bundle, a child theme missing its parent, or an unmaintained theme using functions PHP 8 removed. Switch to a default theme to isolate it, then recover, patch, or replace the theme. |
| A plugin broke the site, two plugins conflict, or a plugin will not update, activate, or install | A PHP fatal in one plugin, or two plugins colliding (a Cannot redeclare function crash, a JavaScript clash, or a hook conflict). Isolate the exact plugin by elimination, ideally in Troubleshooting Mode so visitors see nothing, then fix or replace it. |
| wp-admin redirects to itself in a loop after login | Site URL mismatch between wp_options and wp-config, expired SSL forcing HTTPS redirect against a non-HTTPS site URL setting, or a security plugin blocking the session cookie. |
| WooCommerce orders broken after enabling HPOS or after WordPress 6.9 | HPOS migration sync stuck, "Duplicate entry empty value for key order_key" crash, or the WooCommerce 10.7 sync-on-read removal silently breaking custom integrations that write to wp_postmeta. |
| "Error establishing a database connection" or intermittent database timeouts | Wrong DB credentials in wp-config, the database server unreachable from the web server, a corrupted database table, or the host throttling connections under load. |
| Site shows "This site may be hacked" in Google or redirects visitors to spam | Malware injected into theme files, plugin files, or the database. Often via an outdated plugin vulnerability. Cleanup, vector identification, and Search Console reauthorization required. |
| WordPress admin or frontend extremely slow after an update or traffic spike | Plugin doing a heavy DB query on every admin pageload, caching plugin misconfiguration, image-heavy pages without CDN, or PHP version mismatch leaving the site in legacy mode. |
| WordPress 500 Internal Server Error showing instead of normal pages | PHP fatal error past the WordPress error handler, .htaccess syntax error, or a hosting-level resource limit reached. Server error log shows the real cause. |
| Site broke or white-screened right after the host changed the PHP version to 8.4 | An outdated plugin or theme depends on behavior PHP 8.4 removed. The host forced the upgrade because PHP 8.1 reached end of life. Revert PHP to get online, then fix the plugin and move forward. |
| WooCommerce checkout has no payment methods, or the Place Order button does nothing | A payment plugin that does not support the Checkout block, a disabled or unsupported gateway, missing full https, or a JavaScript conflict breaking the submit button. The block versus classic shortcode setting decides which plugins work. |
| WooCommerce order confirmations or new-order admin alerts are not arriving | The email is disabled, the host blocks the wp_mail function, or unauthenticated mail is filtered by Gmail and Yahoo. The durable fix is authenticated SMTP plus SPF, DKIM, and DMARC records on your own domain. |
| The block editor will not save: Updating failed or Publishing failed, not a valid JSON response | The editor saves through the REST API, and the request is being blocked or contaminated. Usually a security plugin or firewall blocking wp-json, broken permalinks, an SSL mismatch, a loopback timeout, or a PHP notice in the response. |
| The Elementor editor is stuck on the loading screen, will not save, or changes do not show on the front end | The builder loads and saves through admin-ajax with a large block of JSON, so a security plugin or mod_security blocking the save, a low-resource server, a plugin conflict, or stale generated CSS breaks it. Safe Mode and the editor loader method isolate most of it. |
| The Divi Visual Builder will not load, will not save, or the front end shows the old design | Divi loads and saves through JavaScript and compiles pages to static CSS, so minification breaking the builder scripts, a Rocket Loader jQuery clash, a plugin conflict, a starved server, or stale static CSS breaks it. Safe Mode and System Status in the Support Center isolate most of it. |
| The WPBakery editor will not load, the front end shows raw shortcodes, or changes will not save | WPBakery builds pages from shortcodes, so a plugin conflict or minification stops the editor loading, an inactive plugin or a Role Manager post type shows raw vc_row text on the front end, and a complex page can exceed the PHP max_input_vars limit and lose fields on save. Role Manager, conflict isolation, and raising max_input_vars fix most of it. |
| The site or the Posts screen broke right after the WordPress 7.0 update in May 2026 | Most often the DataViews redesign of the Posts, Pages, and Media list screens broke a plugin that customized them, or a plugin called code 7.0 removed and threw a fatal. Update the named plugin to its 7.0-compatible release. |
| The site broke right after the WordPress 6.9 update in December 2025 | A plugin or theme called code that 6.9 removed, the Flash scripts, legacy internals, or other deprecated functions, and threw a fatal. Not the Abilities API, which is additive. Update the named plugin to its patched release. |
| The site broke after migrating to a new host or domain: 404s, white screen, or reset settings | The database still holds the old URLs and credentials. Fix the URLs with a serialization-safe search-replace, not raw SQL, plus the wp-config DB details, the site address, and permalinks. First rule out that you are just seeing the old server. |
| "Sorry, you are not allowed to access this page" locks you out of wp-admin | A WordPress capability check failed, not a server 403. Usually a database table prefix mismatch hiding your administrator role, a lost or corrupted role, or a security or role-editor plugin stripping capabilities. Fixed from outside the dashboard. |
| "Another update is currently in progress" blocks every update, or "Destination folder already exists" | An interrupted update left a stale core_updater.lock row in wp_options, or a leftover plugin or theme folder on disk. The lock auto-expires after 15 minutes; delete it or the folder, then finish the update and raise the limit that caused the interruption. |
| Every page shows Briefly unavailable for scheduled maintenance and will not clear | An interrupted update left a .maintenance flag file in the site root. Delete that one file to restore access. If it persists past 10 minutes, a cached 503 is the second cause. |
| Your pages never get cited by ChatGPT, Claude, or Perplexity | AI crawlers may be blocked at a layer you cannot see in robots.txt, most often Cloudflare’s default AI block at the edge, or the discourage-indexing setting left on. We audit every layer and set the access you want. |
WordPress problems we fix daily
Twelve recurring categories cover almost every WordPress repair we ship. Each category links to the specific diagnostic and fix pattern we use for it.
Critical Error and White Screen
The "There has been a critical error on this website" message or a blank white page. PHP fatal at runtime, almost always plugin or theme triggered.
Plugin Conflicts
Site breaks after a plugin install or update. Often two plugins competing on the same hook, or a plugin incompatible with the current WordPress version or PHP version.
Theme Errors
Broken layouts, missing stylesheets, theme update that wiped customizations, or a child theme breaking after the parent updates.
Update Failures
WordPress core update that hung mid-way, plugin update that left the site in an inconsistent state, or auto-update that broke the site overnight.
Login Problems
wp-admin redirect loops, "Cookies are blocked" errors, locked out by a security plugin, or password reset email never arriving.
Database Errors
"Error establishing a database connection," corrupted tables, missing options, or autoload bloat slowing every pageload.
Slow Loading
High server load, poor Core Web Vitals, slow Time to First Byte, or the admin dashboard taking 10+ seconds to render.
Hacked and Malware
Malware injection, spam content, pharma hacks, redirect hacks, Google Search Console security warnings, host suspension.
Mobile Display Issues
Site looks broken on mobile, responsive design problems, theme that did not update with mobile-first standards.
Form Errors
Contact Form 7, WPForms, Gravity Forms, Fluent Forms, or Ninja Forms not sending notification emails or not submitting at all.
WooCommerce Bugs
HPOS migration failures, checkout errors, payment-gateway breakage, variation visibility issues, REST API failures after core updates.
Media Library Problems
Images not loading, upload errors, broken media library after a CDN change, or missing image thumbnails after a migration.
Why specialist WordPress repair beats generalist help
A generalist freelancer or full-service agency can usually fix a WordPress site eventually. The cost is time and money. Generalists bill hourly, scope creep is the norm, the first agent often does not know the WordPress internals well enough to diagnose past the surface symptom, and the timeline measures in days. For a small-business site losing leads or an ecommerce store losing checkouts, the meter is the problem.
We do this all day. The diagnostic flow for a critical-error message after a WordPress 6.9 update is the same the tenth time as the first time: check the recovery email, enable WP_DEBUG if needed, identify the failing plugin from the trace, confirm the plugin vendor has not yet shipped a 6.9-compatible release, and either roll back the plugin to the last working version, swap for a maintained alternative, or roll back the WordPress core update if a compatible plugin version does not yet exist. We charge flat rate because we are fast at this specific work.
The 2-hour guarantee and the money-back-if-we-cannot promise are the structural enforcement. We do not get paid if the diagnostic flow does not converge on a fix in the window. That keeps us honest about scope at the quote stage. If your issue genuinely needs a project rather than a fix, we say so before you pay.
Specific WordPress error references
The exact error message your site shows usually points at a specific failure class. Click through to the diagnostic flow.
There has been a critical error on this website.PHP fatal in a plugin or theme. The admin recovery email names the file. Most common cause in 2026 is post-WordPress-6.9 plugin incompatibility.
Diagnose this error →Fatal error: Allowed memory size of X bytes exhaustedPHP memory limit hit. Bump WP_MEMORY_LIMIT in wp-config the right way, or fix the plugin that is leaking memory.
Parse error: syntax error, unexpected...PHP syntax error in a theme or plugin file, often introduced by an incomplete update or a corrupted file transfer.
Fix plugin conflict →Error establishing a database connectionWrong credentials in wp-config, DB server unreachable, corrupted tables, or hosting connection throttling.
Fix database connection →HTTP Error 500 - Internal Server ErrorServer-level failure past the WordPress error handler. .htaccess syntax, resource limit, or PHP fatal not caught by WP.
Fix 500 error →Too many redirects (ERR_TOO_MANY_REDIRECTS)Site URL mismatch, mixed HTTPS settings, or a plugin loop in the redirect chain.
Fix redirect loop →wp-admin redirect loop after loginSession cookie not attaching, often from a plugin, an expired SSL cert, or a site-URL mismatch.
Fix login redirect loop →WooCommerce HPOS sync stuck or orders missingPHP 8.4 silent rollback, empty order_key UNIQUE crash, or the WC 10.7 sync-on-read removal.
Critical error after host moved to PHP 8.4An outdated plugin or theme hits a PHP 8.4 fatal. Revert the version to get online, then fix the code and move to a supported version.
Fix WordPress PHP 8.4 breakage →WooCommerce checkout not taking ordersPayment methods missing, a dead Place Order button, or a blocks vs classic shortcode plugin conflict. We get the store charging cards again.
Fix WooCommerce checkout →WooCommerce order emails not arrivingCustomer confirmations or new-order admin alerts missing or going to spam. We set up authenticated SMTP with SPF, DKIM, and DMARC.
Fix WooCommerce order emails →Updating failed. The response is not a valid JSON response.The block editor will not save. The REST API is blocked or contaminated, usually a security plugin, broken permalinks, or a loopback timeout.
Fix publishing failed →Elementor stuck on loading, or the Update button does nothingThe page builder will not load, will not save, or its changes do not reach the front end. A blocked admin-ajax save, a low-resource server, or stale generated CSS. Our full Elementor repair hub.
Elementor repair hub →Divi Builder failed to load, or changes will not saveThe Visual Builder will not load, will not save, or the front end shows the old design. Minification, a Rocket Loader jQuery clash, a starved server, or stale static CSS. Our full Divi repair hub.
Divi repair hub →WPBakery shows [vc_row] as text, or will not saveThe editor is blank, the front end prints raw shortcodes, or a complex page loses fields on save. Role Manager, conflict isolation, and the max_input_vars limit. Our full WPBakery repair hub.
WPBakery repair hub →Theme broke the site, will not activate, or broke on PHP 8A bad theme update or switch, the broken theme stylesheet missing error, an old theme fataling on PHP 8, or a lost customization. Covers Astra, Kadence, GeneratePress, and more. Our full theme repair hub.
Theme repair hub →A plugin broke the site, or two plugins conflictA plugin fatal, a Cannot redeclare function conflict, a failed update or activation, or a lockout. The full conflict-isolation method and Troubleshooting Mode. Our plugin repair hub.
Plugin repair hub →Broken Posts screen after the WordPress 7.0 updateThe DataViews redesign broke a plugin that customized the Posts, Pages, or Media list screens, or a plugin hit a 7.0 fatal. Update the named plugin.
Fix the 7.0 update →Critical error after the WordPress 6.9 updateA plugin called code 6.9 removed, the Flash scripts or legacy internals. Not the Abilities API. Update the named plugin to its patch.
Fix the 6.9 update →Site broken after migrating hosts or domains404s, white screen, or reset widgets and theme options. The database still holds the old URLs. We fix it the serialization-safe way.
Fix a broken migration →Sorry, you are not allowed to access this page.A WordPress capability check failed, not a server 403. Usually a table prefix mismatch, a lost administrator role, or a plugin stripping capabilities. We fix it from outside the dashboard.
Fix the admin lockout →Another update is currently in progress.An interrupted update left a stale core_updater.lock in the database. It auto-expires after 15 minutes, or we delete it and finish the update. Includes Destination folder already exists.
Fix the stuck update lock →Briefly unavailable for scheduled maintenance.An interrupted update left a .maintenance flag in the site root. Delete that one file to restore access, then finish the stalled update.
Fix stuck maintenance mode →Not cited by ChatGPT, Claude, or PerplexityAI crawlers blocked at a hidden layer, usually Cloudflare’s default AI block or the discourage-indexing setting. We audit every layer and open the access you want.
Audit AI crawler access →Pricing and process
Send symptom and URL
Use the quote form. Paste the site URL and one or two sentences on what is broken. Senior engineer reviews and replies with a flat-rate quote, usually within 30 minutes during business hours.
Approve, we start immediately
No scheduling step, no kickoff call. Approve the quote and we begin. You provide hosting and admin credentials through a secure link. The clock starts on the 2-hour guarantee.
Fix delivered and documented
Site verified working. You get a written summary of the root cause, the change applied, and any maintenance recommendation. If we cannot fix within 2 hours, you pay nothing.
Per-fix flat rate ranges by complexity. $49 to $79 for simple fixes (one-plugin conflict, single-page CSS bug, basic 404 cleanup). $79 to $99 for standard fixes (multi-symptom diagnosis, WordPress restore, performance issues). $99 to $149 for complex fixes (malware removal, post-6.9 multi-plugin recovery, WooCommerce HPOS migration repair).
Monthly retainers also exist for agencies and high-volume sites. See monthly plans →
WordPress repair FAQ
How much does WordPress repair cost in 2026?
WordPress repairs at Instant Nerds cost between $49 and $149 flat, depending on the issue. Plugin conflicts and theme errors are typically $49 to $99. More complex issues like security cleanup, post-WordPress-6.9 plugin breakage, or WooCommerce HPOS migration repair are $99 to $149. There is no hourly billing and no scope creep. You get the quote before we start, and you pay nothing if we cannot fix it within 2 hours.
What is causing the "There has been a critical error on this website" message in 2026?
That message is the generic frontend display of a PHP fatal error. The actual cause is hidden until you check the recovery email WordPress sent to your admin address, or enable WP_DEBUG in wp-config.php. In 2026 the most common triggers are plugin incompatibility with WordPress 6.9, which removed a batch of long-deprecated code on its December 2025 launch and broke older plugins that still called it, PHP 8.4 compatibility issues in older plugins, and plain plugin-versus-plugin conflicts. We diagnose the real cause from the error log and fix it in 2 hours.
Can you fix the WordPress white screen of death?
Yes. White screen of death is one of the most common WordPress issues we fix. It is the older display of a PHP fatal error before WordPress 5.2 added the "critical error" message. Common causes are plugin conflicts, theme errors, PHP memory exhaustion, and corrupted .htaccess files. We diagnose the exact cause through the WordPress recovery email, debug log, or SSH/SFTP-level inspection and fix it within 2 hours.
My WordPress site was hacked. Can you help?
Yes. We specialize in WordPress malware removal and security cleanup. We remove all malicious code from theme files, plugin files, the database (commonly wp_options and wp_posts), and the uploads folder. We patch the entry vector, harden the site against future attacks (file permission audit, admin user audit, 2FA enforcement, security plugin configuration), and clear any Google Search Console security warnings. The work is done in 2 hours flat for most cases.
WordPress 6.9 broke my site after auto-update. Can you fix it?
Yes. WordPress 6.9 shipped on December 2, 2025. It is stable and fully compatible with PHP up to 8.5, but it removed a batch of long-deprecated code, including all Flash support such as the swfupload and swfobject scripts, legacy Internet Explorer code, and deprecated internals around older menu walkers, classic widgets, media modals, and the customizer. Any plugin or theme still calling that retired code threw a fatal the moment 6.9 applied. WooCommerce checkout, Yoast SEO sitemaps, and the Elementor editor all broke on launch day and were patched within days. The new Abilities API is additive and backward compatible, so despite the early commentary it is not what broke sites. We diagnose which specific plugin or theme is incompatible from the error log and apply the right fix: update to the patched version, swap for a maintained alternative, or roll the core update back on staging if a compatible plugin version does not yet exist.
Can you fix WordPress plugin conflicts?
Yes. Plugin conflicts are our specialty. We isolate the conflict through systematic plugin deactivation, identify the specific incompatibility (often a hook collision, an asset-registration conflict, or a PHP version mismatch), and apply the right fix: configuration change, version pin, alternative plugin, or custom code workaround. We also recommend safer alternatives when the conflicting plugin is unmaintained.
Do you fix WooCommerce problems including HPOS migration issues?
Yes. WooCommerce is built on WordPress and we fix all WooCommerce issues. The most painful current category is High-Performance Order Storage (HPOS) migration breakage: sync that runs forever without writing rows, "Duplicate entry empty value for key wp_wc_orders.order_key" crashes, and the WooCommerce 10.7 (April 14, 2026) removal of sync-on-read that silently broke custom integrations. We have a dedicated diagnostic flow for this. We also fix conventional WooCommerce issues like checkout payment-gateway breakage, cart issues, and variation visibility bugs.
Can you recover my WordPress site after a failed update?
Yes. Failed WordPress, theme, or plugin updates are common, especially when PHP, WordPress core, and plugins drift out of compatibility with each other. We restore your site from the most recent good state (backup, snapshot, or git revert), complete the update properly with the right version sequence, or roll back to a working version if the new version genuinely cannot be made compatible with your stack. We document what was changed so the next maintenance window does not repeat the failure.
Will a broken WordPress site hurt my Google rankings?
Yes. Google crawls your WordPress site continuously. If it encounters 500 errors, the critical error message, or load times over 3 seconds, it reduces your crawl budget, suppresses your rankings, and eventually deindexes affected pages. The longer your WordPress site stays broken, the more SEO damage accumulates. A site down for a single day usually recovers within a week of being fixed. A site broken for a month can take several months of normal operation before crawl budget and rankings return. Fast repair is critical.
How do I know if my WordPress site has been hacked?
Common signs: unexpected redirects to spam sites, new admin users you did not create, strange files in wp-content/uploads or the site root, Google showing "This site may be hacked" warnings in search results, your hosting provider suspending your account, spam content injected into posts or pages, search results showing pages for products you do not sell (the pharma hack pattern), and your site sending email you never sent. If you see any of these, take the site offline temporarily and contact us. Every hour a hacked site stays online increases the cleanup cost and the SEO recovery time.
Can you fix my WordPress site if I am completely locked out of wp-admin?
Yes. We access your site through your hosting control panel, SFTP, SSH, phpMyAdmin, or WP-CLI even when the WordPress admin dashboard is inaccessible. Lockouts from forgotten passwords with broken email reset, security plugins blocking your IP, too many login attempts, corrupted .htaccess, the WordPress login redirect loop, or compromised admin accounts are all fixable. We need only your hosting credentials to start.
Do you offer ongoing WordPress maintenance, or just one-off repairs?
Both. Our flat-rate per-fix service ($49 to $149) is the best fit if you have a specific WordPress problem now. Our monthly plans (Starter $299, Growth $599, Scale $999) include plugin and core updates, security monitoring, performance optimization, backups, and priority support, and they prevent most WordPress issues before they happen. Agencies managing multiple client sites usually pick the Growth or Scale plan. Single-site owners with intermittent issues usually do better with per-fix pricing.
Sources and further reading
Every WordPress-specific claim on this page traces to WordPress.org documentation, the WordPress support forum, vendor release notes for WooCommerce, Yoast SEO, and Elementor, PHP.net supported-versions documentation, or our hands-on repairs.