コンテンツにスキップ

WordPress でメンテナンスモードに切り替える方法

メインイメージ

WordPress サイトを運営していると一時的にブロックしたくなることがあります。 そんなときに便利なのがいわゆる「メンテナンスモード」です。

ここでは WordPress でメンテナンスモードに切り替える方法を紹介します。

A. WP-CLI を使う方法

WordPress のコマンドラインツール WP-CLI を使う方法です。

WordPress 本体のメンテナンスモード中の画面

あまり知られていませんが、実は WordPress 本体にメンテナンスモードの機能が備わっています。 ただし、メンテナンスモードを有効にすると管理画面へのアクセスできなくなってしまうので、管理画面でこれを有効化する画面はありません。

WP-CLI を使うと WordPress 本体のメンテナンスモードを活用できます。

確認時のバージョン

wp --version
WP-CLI 2.10.0

メンテナンスモードの有効化

メンテナンスモードを有効にするには次のコマンドを実行します。

wp maintenance-mode activate

メンテナンスモードの無効化

メンテナンスモードを無効にするには次のコマンドを実行します。

wp maintenance-mode deactivate

メンテナンスモードが解除され、通常どおりにサイトが表示されるようになります。

メンテナンスモードのステータス確認

現在のメンテナンスモードの状態を確認するには次のコマンドを実行します。

wp maintenance-mode status

メンテナンスモードが有効か無効かで異なるメッセージが出力されます:

# メンテナンスモード有効時:
Maintenance mode is active.

# メンテナンスモード無効時:
Maintenance mode is not active.

ただし、 wp maintance-mode status はメンテナンスモードが有効かどうかに関わらずステータスコード 0 を返します。 スクリプトなどで条件分岐に利用したい場合は wp maintenance-mode is-active の方が有用です。

wp maintenance-mode is-active

wp maintenance-mode is-active はステータスコードでメンテナンスモードの有効・無効を教えてくれます。 次のような使い方ができます。

if wp maintenance-mode is-active; then 
  echo 'active'
else 
  echo 'inactive'
fi

※ WP-CLI のバージョンが変わると挙動が変わる可能性もあるため、利用前に必ず挙動を確認してから使ってください。

WP-CLI を使う方法の注意点

上で述べたとおり、 WP-CLI で行うメンテナンスモードでは有効時にサイト管理者も含めたすべてのユーザーに対してメンテナンス中のページが表示されるようになります。

そのため、メンテナンス中に管理画面で作業をするような用途にはこの方法は使えません。 管理画面での作業は行わず、外部のバックアップツールを使ったりターミナルで作業を行ったりする場合には有用な方法です。

B. プラグインを使う方法

メンテナンスモードはニーズの多い定番機能なので、いくつかの定番プラグインがあります。 世界で最も利用者の多いプラグインを 3 つ紹介します。

Website Builder by SeedProd

  • WYSIWYG で見た目どおりにサイトを作れるサイトビルダー機能を提供するプラグイン
  • 機能の一部として「カミングスーン」や「メンテナンスモード」の機能を提供する
  • プラグインの内部名は coming-soon
  • 90 万以上のサイトが利用

Maintenance

  • メンテナンスモード機能だけを提供するプラグイン
  • きれいな見た目のメンテナンス中ページがかんたんに利用できる
  • プラグインの内部名は maintenance
  • 90 万以上のサイトが利用

LightStart

  • メンテナンスモード機能だけを提供するプラグイン
  • きれいな見た目のメンテナンス中ページがかんたんに利用できる
  • プラグインの内部名は wp-maintenance-mode
  • 70 万以上のサイトが利用

1 つめの Website Builder by SeedProd は元々は Coming Soon ページを表示する機能に特化したプラグインでしたが今では汎用のサイトビルダーになっています。 純粋にメンテナンスモードの機能だけが欲しい場合は Maintenance か LightStart を検討するとよいと思います。

WP-CLI の場合と異なり、プラグインを利用する場合は管理画面からメンテナンスモードの有効・無効の切り替えができます。 また、メンテナンスモードが有効な間も管理画面を利用できます。

プラグインを使う方法の注意点

ただし、プラグインを利用する場合の難点として次のようなものがあります。

  • 余計な機能が含まれている
  • 設定データがデータベースに格納されてしまう(プラグインをアンインストールしても残る)
  • プラグインの保守コストが増える
  • プラグインの有料版や他のプラグインの売り込みがややうるさい

参考

WP-CLI 公式リファレンス