Alex Kovacic

Website broken after a WordPress or PHP update

A white page, "There has been a critical error on this website", an admin panel that won't open. It happened after a WordPress or plugin update, or your host changed the PHP version. It can nearly always be brought back without losing anything.

Call me on +39 347 741 5402Describe what you seeMessage me on WhatsApp

What to do first

  1. Stop. Don't keep updating or reinstalling: every attempt makes the rebuild harder.
  2. Check the site administrator's mailbox. Since version 5.2, WordPress sends an email with a link to recovery mode, which opens the admin panel with the broken component paused. The link expires, so use it soon.
  3. Ask your host for yesterday's backup and keep it aside. Don't restore it yet if orders or form messages have come in: you would lose them.
  4. Write down what was updated and when. It is worth more than any analysis.

If no email arrives, the administrator address may belong to someone who no longer works with you, or the site may be unable to send mail.

What usually breaks

  • An updated plugin no longer gets on with another one, or with the theme.
  • The host raised the PHP version. Code written years ago uses functions that have since been removed.
  • The update stopped halfway, because of a full disk or a memory limit, and left a .maintenance file on the site.
  • A paid plugin with an expired licence stayed old while WordPress moved on.

Why this happens more and more with PHP

Each PHP version gets security fixes for a fixed period. According to the php.net calendar, 8.1 has had none since 31 December 2025, 8.2 stops on 31 December 2026 and 8.3 on 31 December 2027. When a version drops off the calendar, hosts remove it or charge extra for it, and the site moves to the new one even if nobody planned it.

If you are still on PHP 7, you have been off the calendar for years. That move should be prepared on a copy of the site.

How I bring it back

  1. I save files and database exactly as they are.
  2. I read the error log, which gives the file and the line that stopped everything.
  3. I pause the broken component, over FTP if needed, by renaming its folder, and the site comes back online.
  4. I fix the problem: update, replace the plugin or correct the theme code.
  5. I test the pages that matter, the contact form and the cart, if there is one.

How to avoid ending up here

With maintenance I update WordPress, theme and plugins every week and test the site right after. Big changes, such as a new PHP version, I try on a copy first. Code added by hand or a theme edited directly remain the weak spot: if that is your case, I will tell you.

Frequently asked questions

Have I lost my content?

Almost never. Text and products live in the database, and a failed update usually breaks the code that displays them. That data can be recovered.

Can I go back to the previous PHP version?

Often yes, from the hosting panel, and it is the fastest way to get the site back. It is a fix for a few days: old versions no longer get security patches, and the host will remove them sooner or later.

Is it the host's fault?

Rarely. A PHP change exposes old code that only worked by luck: a theme that wasn't updated, an abandoned plugin.

Should I turn off automatic updates?

Not unless someone does them instead: on WordPress nearly all vulnerabilities are in plugins. It is better to update every week and test the site right after.

Read more

Write to me

Tell me the site address, what was updated and when, and attach a screenshot of the error or WordPress's email about the technical issue (PDF, JPG or PNG, up to 10 MB). Don't write passwords in the form: I will ask for access later, in a safe way.

Email
gokalex@gokalex.com
Phone
+39 347 741 5402
WhatsApp
Message me on WhatsApp
Where
Rovellasca (Como), Italy. With clients further away I work remotely.
Hours
Monday to Saturday, 9am to 7pm, Italian timeClients with 24/7 cover can call at any hour, nights and holidays included.
PDF, images, Office documents or ZIP, up to 10 MB. For bigger files use SwissTransfer and put the link in your message.
I use these details only to reply to you.

ready