Maintenance mode

Close the site to visitors while you work, without closing it to yourself — and without telling search engines the site is gone.

  • Beginner
  • 7 min read
  • Applies to 2.0

Turning it on

User Access → Maintenance Mode. Switch it on, write the message visitors should see, and save.

No Maintenance Mode in the menu? It appears once Enable maintenance is on under User Access → Users. That switch does not close the site — it decides whether the screen and the admin-bar toggle exist at all, so a site that never needs them is not carrying the controls around.

The Maintenance Mode screen with the switch, message and exemption settings.

Who still gets through

Exemptions are checked in this order, and the first match wins:

  1. An allowed IP address. Anyone from an address on the list sees the site normally, signed in or not.
  2. An allowed role. Administrators by default. This one is only reached by somebody who is signed in — a signed-out visitor is past it before it is looked at.
  3. An exempted page. Named on the settings screen, and open to everybody — see Pages that stay open.
  4. The bypass link. A URL parameter — maintenance-bypass unless you change it — that lets you hand the whole site to somebody without adding them to a list.

The role list is the one people reach for first, and it is the one that does nothing for a visitor without an account. To let a client see the work in progress, use their IP address — or exempt the pages you want them on.

Pages that stay open

Sometimes the site has to be closed except for one page — the contact form, a status page, the landing page an advertising campaign is still pointing at.

Maintenance Mode → Whitelist Settings → Exempted Pages. Start typing a title, pick the page from the list that drops down, and save. Exempted pages answer normally — their real content, status 200 — while every other URL still gets the maintenance page.

An exempted page is open to everyone, including visitors who are not signed in. That is the point of it, and the reason to keep the list short: each page on it is a page the public can still reach.

Three things worth knowing before you rely on it:

  • The list holds pages and posts, not sections. Exempting a page does not exempt the category archive it appears in, nor the search results that would list it. Those still show the maintenance page.
  • A page that is deleted or unpublished falls off the list the next time you open the screen. Nothing has to be tidied up by hand.
  • A home page that is the blog index cannot be exempted. There is no page to name. If your front page is a page — the usual arrangement — it is on the list like any other.

The panel

The message sits on a panel, in the middle of the page background. Six controls under Panel background and shadow decide how that panel looks, and a live sample beside them shows the result against the page background you chose:

ControlWhat it does
Background colourthe panel's own colour
Background opacity0–100%. Below 100 the page background shows through
Shadow sizehow far the shadow is cast below the panel
Shadow blurhow soft its edge is
Shadow opacity0 removes the shadow altogether
Backdrop blurblurs whatever is behind the panel

Backdrop blur only shows through a translucent panel. At 100% background opacity there is nothing to see through, so the blur has no visible effect — lower the opacity first, then raise the blur.

The Minimal template keeps its own lighter look — a smaller shadow, no blur — for as long as you leave those controls alone. Move one and both templates follow it.

The status code

Status code decides what the maintenance page tells machines.

CodeMeaningWhen
503 – Service Unavailabletemporarily down, come back laterthe default, and right for almost every case
200 – OKthis page is the siteonly if you are leaving it up for a long time and want it indexed

503 is what you want. Search engines understand it as temporary and come back; they do not drop your pages. A Retry-After header goes with it, worked out from the scheduled end time if you have set one, and one hour if you have not.

Coming from version 1.x? The status code could be chosen and was ignored — the page always sent 503 with a fixed one-hour Retry-After. Choosing 200 – OK changed nothing. It is honoured in 2.0, so a site that had selected 200 to avoid an SEO impact will now actually send it. A third option, 302, has been removed: a redirect with nowhere to redirect to was never going to work.

Scheduling

Set a start and an end, and maintenance mode opens and closes by itself. The end time also feeds the Retry-After header, so visitors' browsers and search engines are told when to come back.

If a maintenance notification email is switched on, it goes out when the window opens and closes — see Who gets which email.

Before you switch it on

  • Check the exemption list holds you. Administrators are exempt by default, so this is normally fine, but confirm it if you have changed the roles.
  • Note the bypass link. It is the way back in if something else goes wrong.
  • Write the message for a stranger. "Back at 3pm" tells a visitor more than "Under maintenance".

Something missing or out of date? Tell support.