White Screen
of Death
How a nulled plugin brought down a client’s live site at 5am — diagnosed, resolved, and rebuilt within the hour.
A business owner called in a panic at 5am — their entire website was completely blank. No error message, no admin access, nothing. This is a textbook White Screen of Death (WSOD): a fatal PHP error that WordPress suppresses, leaving only a blank white page. Investigation revealed the culprit was a nulled (pirated) version of the PRO-Elements Elementor plugin, which had fatally broken the site.
Why this incident happened
| Factor | Risk Level | Detail |
|---|---|---|
| Nulled plugin in use | Critical | PRO-Elements (a nulled Elementor Pro replacement) was installed on a live production site |
| No recent backup | High Risk | No backup was in place prior to the incident, increasing potential for data loss |
| Plugins overdue for updates | Moderate | Several plugins were running outdated versions at the time of the incident |
| No staging environment | Moderate | Updates and plugin changes were being applied directly to the live site |
What we were dealing with
The site had two problems happening simultaneously, each requiring a different resolution approach.
Nulled plugins are pirated copies of premium software with their licence checks stripped out. Beyond the legal risks, they receive no security patches, may contain hidden malware, and can produce exactly this kind of fatal PHP error with zero warning. They are never safe to run on a production site.
Identifying the root cause
wp-config.php via FTP and enabled debug logging to capture the suppressed PHP error:
wp-content/debug.log. The log immediately pointed to the PRO-Elements plugin — a nulled version of a premium Elementor add-on — as the source of the fatal PHP error. The error was being triggered on every page load, causing the full white screen.
Without the debug log, WSOD gives you nothing to work with. Enabling it is always step one when wp-admin is inaccessible — it tells you exactly which file, which plugin, and which line is responsible.
Restoring the site, step by step
wp-content/plugins/ via FTP and renamed the PRO-Elements folder to force WordPress to auto-deactivate it:
Elementor, Forminator, LiteSpeed Cache, PRO Dummy, Site Kit by Google, Wordfence Security, and Yoast SEO were all brought up to date. All updates were minor versions and applied without issue.
Debug mode was turned off in wp-config.php — WP_DEBUG set back to false. Leaving debug mode active in production can expose sensitive server path information to the public. Full end-to-end testing was completed before the site was handed back to the client.
Recommendations made to the client
What was delivered
-
✓WSOD resolved: White screen eliminated within minutes of starting diagnosis via FTP and wp-debug
-
✓Root cause eliminated: Nulled PRO-Elements plugin permanently removed and replaced with legitimate tooling
-
✓Full backup taken: Complete site backup secured via All-in-One WP Migration before any maintenance work began
-
✓All plugins updated: Seven plugins brought up to date one-by-one with no issues — Elementor, Forminator, LiteSpeed Cache, PRO Dummy, Site Kit, Wordfence, and Yoast SEO
-
✓Layout fully rebuilt: All sections that relied on the nulled plugin were reconstructed on staging and pushed live — visually identical to the original design
-
✓Full testing completed: End-to-end site test performed before handover to confirm all pages, forms, and functionality were working correctly
-
✓Client happy: Site fully restored and improved within one hour of the initial call. Client briefed on prevention steps to avoid recurrence
Incident: White Screen of Death — nulled plugin fatal PHP error (PRO-Elements)
Reported: 5:00 AM | Resolved: Within 1 hour | Total downtime: ~1 hour
Root cause: A nulled (pirated) version of the PRO-Elements plugin produced a fatal PHP error that WordPress suppressed, rendering both the front end and wp-admin completely inaccessible.
Resolution: Gained access via FTP. Enabled WP_DEBUG to identify the offending plugin via debug.log. Deactivated PRO-Elements by renaming its folder. Took a full backup. Updated all outdated plugins individually. Created a Hostinger staging environment to rebuild layout sections that depended on the nulled plugin. Pushed rebuilt layout to live. Disabled debug mode and tested fully before handover.
Prevention: Removed all nulled software. Configured automated daily backups. Client educated on staging workflow for all future updates.
What this incident showcases
Key competencies from this resolution
Resolving a live-site WSOD under pressure — at 5am, with a panicking client — requires a combination of technical depth, calm decision-making, and professional process. This incident demonstrates all three.
- FTP & file system confidence: With wp-admin completely inaccessible, file system access was the only path in. Knowing where plugins live and how WordPress loads them is non-negotiable for serious site administration.
- Debug-first methodology: Enabling WP_DEBUG before attempting any fix ensures you are solving the actual problem, not guessing. The log gave an immediate, definitive answer.
- Backup before touching anything: Securing a full backup before beginning maintenance is a professional discipline — not an afterthought. It protects both the client and the administrator.
- Staging environment usage: Using a staging environment for the layout rebuild rather than working directly on the live site shows platform maturity and protects the client from further risk.
- End-to-end ownership: From the initial diagnosis through to the layout rebuild, plugin updates, and final handover test — this was a complete resolution, not just a quick fix.