How to Fix WordPress White Screen of Death — Complete Guide
The WordPress White Screen of Death is a blank page caused by PHP errors…
WordPress Updating Failed Publishing Failed Error
When you click “Publish” or “Update” in the WordPress block editor and nothing happens except a red badge that reads “Updating failed” or “Publishing failed,” you’re dealing with a broken communication line between the editor and your server. The block editor (Gutenberg) doesn’t save content the old-fashioned way — it uses the WordPress REST API to send save requests in the background. When that channel gets interrupted, the editor just shrugs and throws this error.
This isn’t a content loss situation — WordPress autosaves drafts regularly — but it does mean your latest changes aren’t going live. The problem almost always lives in one of three places: something is blocking your REST API, your site URLs are mismatched, or a plugin is stepping on the save process.
The reassuring part? None of the fixes require you to touch code in most cases. You’ll work through Settings pages and the plugin screen, and one of these steps will clear it up.
https://yoursite.com/wp-json/. Replace the domain with your own. If you see a large block of text starting with {"name":, your REST API is reachable. If you get a 403 Forbidden, 404, or a blank page, the API is blocked and that’s your starting point.
You should see: A JSON response with your site name and other metadata — not an error page.
You should see: The post publishes successfully, confirming a plugin is the culprit.
You should see: Publishing works after each re-activation until the bad plugin is turned back on.
You should see: Both fields showing the exact same URL before you save.
You should see: A success message at the top of the Permalinks page, and the error gone when you try to publish.
You should see: Publishing succeeds as soon as REST API access is permitted for authenticated users.
You should see: Your host confirms a rule was triggering and has been adjusted — publishing should then work immediately.
wp-config.php file via File Manager or FTP and add this line just above the comment that says “That’s all, stop editing!”:
define('WP_MEMORY_LIMIT', '256M');
You should see: If a memory exhaustion was causing the REST API request to die mid-process, publishing now completes without error.
https:// in Settings but your server doesn’t have SSL active, every REST API call will silently fail due to certificate errors. Confirm SSL is working at https://yoursite.com before switching your URLs.WP_HOME and WP_SITEURL in wp-config.php, they override Settings → General entirely. Make sure those constants match your actual live URL — including correct protocol and www preference — or the mismatch persists regardless of what the Settings page shows.Get free WordPress & AI tips
Join 500+ readers. No spam, unsubscribe anytime.
No — “Updating failed” and “Publishing failed” are block editor (Gutenberg) specific messages because Gutenberg relies on the REST API to save content. The Classic Editor uses a traditional form POST method that bypasses the REST API entirely. If you install the Classic Editor plugin, the error disappears — but that’s a workaround, not a fix. The underlying REST API problem will affect other parts of your site that depend on it.
It’s uncommon but possible. Some themes — particularly older or poorly coded ones — enqueue scripts that interfere with the block editor’s network requests. To rule this out, temporarily switch to a default WordPress theme like Twenty Twenty-Four from Appearance → Themes and try publishing. If it works, the theme is contributing to the conflict.
Almost certainly not. WordPress autosaves your work every 60 seconds as a draft revision. Go to Posts → All Posts (or Pages → All Pages), find the item you were editing, and open it. Check the Revisions panel on the right — your most recent autosaved content should be there. You may just need to manually restore the latest revision.
Ask your host specifically to search for mod_security rule IDs that triggered on requests to /wp-json/wp/v2/posts or /wp-json/wp/v2/pages in your server logs. A general “nothing is blocked” response often misses WAF-level rules that don’t appear in standard access logs. If they still find nothing, try switching to the default theme, deactivating all plugins, and testing from a different browser and network to rule out local caching or browser extension interference.