Troubleshooting guide · website-errors · Published 2026-08-16 · 3 min read

Plugin activation boot loop

Fix a plugin activation boot loop where enabling an add-on sends WordPress into an instant 500, redirect, or fatal repeat loop.

Symptoms

You activate a plugin, and the site stops responding or instantly redirects. On the next load it does the same, and on the next. WordPress never renders a normal response between attempts, because the fatal fires at an early stage on every request, usually in wp-settings.php where plugins load. Two flavours look different but share the same root:

Break the loop fast

The two hard facts that get you out: WordPress stores the active plugin list in one option (active_plugins), and any plugin scheduled to run first in that list dies every single request. So make the dead one not active. There are three equivalent routes.

1. Remove the plugin folder (safest, still live)

Renaming the plugin directory deactivates it, even when the admin is unreachable, and needs no console:

wp-content/plugins/my-plugin  ->  rename to  my-plugin.disabled

WordPress treats a missing directory as inactive. The admin then loads, and you drop the fix. This is the first move when the site is down.

2. Edit the option from the database

Run an SQL update against a *backup* or via a drop-in that only deletes that one plugin row, never a full delete:

UPDATE wp_options SET option_value = 'a:0:{}' WHERE option_name = 'active_plugins';

Prefill empty for safety: if you accidentally keep one entry with a bad key, WordPress dies on the same line again. Prefer the file route above for a live site.

3. Use an mu-plugin safety net

Create wp-content/mu-plugins/off-switch.php with nothing but the active_plugins filter that returns an empty list for one request. Then log into the admin and start over. The file is a one-shot safety switch, not a permanent fixture, and it deactivates every plugin in the same pass.

Why it loops (and what to check)

After you are back in, the root cause is the same for both flavours: the plugin's activation_hook runs a theme render, a redirect that ignores an admin URL, or a fatal from calling a function it expects WordPress to have defined already. The loop is your own plugin being re-activated at every request.

The plugin causes error guide is the wider isolation path, PHP fatal names the specific line to fix, and the login loop article is the adjacent redirect-loop surface where the wp-admin cookie bounces instead of the front-end.

Need a website built, fixed, optimised, migrated or replaced?

This technical resource is written by CSMBAC, a small design and development studio. If you would rather hand the problem to a professional, the website service page explains how we build enquiry-ready websites.

Explore website services