14
Days
08
Hours
32
Minutes
07
Seconds
🚀 WordPress Plugin · v1.0.0 · GPL v2

WP Coming Soon
& Maintenance
Mode

Launch a stunning coming soon countdown or a proper HTTP 503 maintenance page — with subscriber capture, custom backgrounds, bypass for logged-in admins, and REST API — all without touching a single theme file.

Two Distinct Modes

Coming Soon vs. Maintenance

The plugin operates in two separate modes. Switch between them any time from the Settings panel — no deactivation required.

Coming Soon

Building Something New

A beautiful holding page with a live countdown timer and subscriber capture form. Returns a standard 200 HTTP status — suitable for pre-launch pages visible to the public.

  • Live countdown to your launch date
  • Subscriber email capture form
  • Social media link buttons
  • Custom background image or video
  • Admins always bypass — no lockouts
Maintenance Mode

Scheduled Downtime

A proper maintenance page that returns HTTP 503 Service Unavailable with a Retry-After header — tells search engines not to de-index your site during maintenance.

  • HTTP 503 status with Retry-After header
  • Admin bypass keeps your workflow running
  • Custom logo and message
  • Progress bar (optional)
  • Estimated return date/time display
Getting Started

Installation & Activation

After activation the plugin is off by default — your site remains fully accessible until you deliberately enable Coming Soon or Maintenance Mode from the Settings panel.

Upload the Plugin

Go to Plugins → Add New → Upload Plugin. Select wp-coming-soon-maintenance.zip and click Install Now.

Activate

Click Activate Plugin. A Coming Soon menu item appears in the WordPress admin sidebar. Your site remains live — nothing changes until you enable a mode.

Design Your Page

Go to Coming Soon → Settings. Upload a background image or enter a video URL. Add your headline, sub-message, and logo. Choose a colour scheme from the palette picker.

Set the Countdown

Enter your Launch Date and Time in the date picker. The countdown timer is generated automatically in JavaScript — no server dependency.

Enable the Mode

Flip the toggle to Coming Soon or Maintenance Mode. Logged-in Administrators are automatically bypassed and see the normal site. All other visitors see your page.

Collect Subscribers

Enable the subscriber capture form in Settings. Emails are stored in the wp_wpcm_subscribers database table. Export as CSV from the Subscribers admin page.

Plugin Capabilities

Everything in the Box

Live Countdown Timer

JavaScript countdown to your exact launch date and time. Updates every second. Shows days, hours, minutes, seconds.

🔒

Admin Bypass

Any user with the manage_options capability always sees the live site. Test your page by logging out.

🌐

HTTP 503 + Retry-After

Maintenance Mode sends the correct headers. Google, Bing, and other crawlers know to revisit — not de-index.

📧

Subscriber Capture

AJAX email form. Duplicate email detection. Stored locally in wp_wpcm_subscribers. CSV export from admin.

🎨

Custom Backgrounds

Upload an image, enter a video URL (MP4/YouTube), or choose a solid or gradient colour. All set from the Settings panel.

🔗

Social Links

Add GitHub, LinkedIn, Twitter, Instagram, and a custom URL. Links render as icon buttons on the coming soon page.

📊

Progress Bar

Optional completion percentage bar. Set manually (e.g. 65%) to give visitors a sense of how close launch is.

🔌

REST API

GET subscriber count and plugin status. POST to add a subscriber programmatically from an external app.

🛡

Whitelisted URLs

Exclude specific page slugs or URL patterns from the coming soon mode — e.g. your sitemap, RSS feed, or API endpoints.

🌍

i18n Ready

All strings wrapped in __() with the wp-coming-soon text domain. Fully translatable via .pot file.

Developer Reference

Settings, Shortcodes & REST API

Settings Panel

All configuration is done from Coming Soon → Settings. There are no shortcodes needed to activate the plugin — it intercepts requests at the WordPress template_redirect hook.

Setting
Default
Description
Mode
Off
Off / Coming Soon / Maintenance Mode
Headline
"We're Coming Soon"
Main heading shown on the page
Sub-message
""
Optional paragraph below the heading
Launch Date
30 days ahead
Target date for the countdown timer
Retry-After
3600
Seconds until next crawl attempt (Maintenance Mode)
Background Type
Color
Color / Gradient / Image / Video URL
Subscriber Form
Enabled
Show or hide the email capture form
Progress %
0
Completion percentage for the progress bar (0 = hidden)
Whitelist URLs
""
Comma-separated URL slugs to bypass the mode
Logo
Site logo
Upload a custom logo for the coming soon page

Bypass Logic

The plugin hooks into template_redirect at priority 1. Bypass conditions are checked in this exact order:

// Bypass order (first match wins, site loads normally)
1. current_user_can( 'manage_options' )  → always bypass
2. is_admin()                             → wp-admin always accessible
3. is_user_logged_in() + bypass role set  → optional role bypass
4. current URL matches whitelist slug       → specific pages bypass
5. REST API requests                        → always bypass
else → serve Coming Soon / Maintenance page

Subscriber Form

The subscriber capture form is rendered on the coming soon page automatically when enabled. It submits via AJAX using wp_ajax_nopriv_wpcm_subscribe.

/* Form submits to: admin-ajax.php */
action: "wpcm_subscribe"
fields: email (required), nonce

/* Response */
{ success: true,  message: "Thank you! We'll notify you at launch." }
{ success: false, message: "You're already on the list!" }

REST API

MethodEndpointAuthDescription
GET/wp-json/wpcm/v1/statusPublicReturns current mode, subscriber count, and launch date.
GET/wp-json/wpcm/v1/subscribersAdminList subscribers with email and signup timestamp.
POST/wp-json/wpcm/v1/subscribePublicAdd subscriber programmatically. Body: { "email": "…" }.
DELETE/wp-json/wpcm/v1/subscribers/{email}AdminRemove a subscriber by email address.

WP-CLI Support

# Enable coming soon mode from the command line
wp wpcm enable --mode=coming-soon

# Enable maintenance mode
wp wpcm enable --mode=maintenance

# Disable and restore normal site
wp wpcm disable

# Export subscribers to CSV
wp wpcm export-subscribers --file=subscribers.csv
The Developer

Author Profile

Vetri Suriya
PHP · WordPress · AWS

Full-stack WordPress developer specialising in custom plugin architecture, REST APIs, and production-grade deployments on AWS. This plugin is part of a comprehensive 10-plugin developer reference library built to demonstrate every major WordPress technology — from CPTs and Settings API to AJAX, REST endpoints, WP-CLI, and database management.