

The database error page as visitors see it: logo, message, retry button and incident line.
When WordPress breaks, it shows screens of its own that no theme and no plugin can style, because they appear before any of them is loaded:
Offair replaces these three screens with a calm page in your colors, with your logo and your words, and makes them answer with the right HTTP status so that search engines and caches treat the outage as temporary.
It also keeps a history of the outages your visitors ran into, and can email you when the database goes down, then again once the site is back.
This is not a maintenance mode or coming soon plugin. It does not take your site offline and it does not add a page you switch on. It only covers the moments when WordPress itself cannot serve your site.
WordPress looks for three special files in wp-content, called drop-ins: db-error.php, maintenance.php and php-error.php. It loads them itself, before any plugin, which is the only way to show something when the database is down.
The plugin copies one static file shipped in its own folder (dropins/drop-in.php) under these three names. No code is generated. The content of the pages (texts, colors, logo) is saved as a JSON file in wp-content/uploads/offair/, and the drop-in reads it when a page has to be shown. What visitors must not see, such as the alert recipient and the history, is kept next to it in a private folder whose name cannot be guessed.
The plugin never replaces a db-error.php, maintenance.php or php-error.php it did not add itself. If one already exists, it tells you and waits for your decision.
offair_settings filters the settings before the page content is built.offair_data filters the page content before it is saved for the drop-in.offair_incident_resolved fires once a database outage is over, with the times of the first and last pages shown.offair/db-error.php, offair/maintenance.php and offair/php-error.php in the active theme or its parent. The variables they receive are listed in the documentation on GitHub.wp offair status, generate [--force], remove [--force], preview <db|maintenance|php>, history.