ワードプレスのMaintenanceで公開までカウントダウンさせ自動公開させる。|WP Maintenance|PHP|wordpress

ワードプレスでサイトを簡単にメンテナンスにするプラグイン「Maintenance」

Maintenance

WebFactory Ltd様制作の優良プラグインです。

普段お世話になっている方も多いはず。

 

 

今日はこちらのプラグインでメンテナンス終了までの時間をカウントダウンし、0になると自動で公開されるようにしてみましょう。

今回日付けのカウントダウンには「jQuery Countdown」を利用します。

 

そのため、まずはjQuery Countdownの読み込みからやってみましょう。

これには「load_custom_scripts」というフックを利用します。

functions.phpに以下を記入しましょう。

これでjQuery Countdown読み込みは完了です。

勿論これだけでなく自分の作業するjavascriptも読み込ませておきましょう。

そのため、上記を以下に修正

 

今回はテーマファイルの直下にjsというフォルダを作り、「maintenance_script.js」というファイルを作成しました。

 

次に、残り時間を表示させるためのhtmlをメンテナンスページに追加しましょう。

これには「content_section」というフックを利用します。

functions.phpに以下を記入しましょう。

 

次は時間を表示させるためのjavascriptを記述していきます。

maintenance_script.jsへ以下を記述しましょう。

 

javascriptでは少しだけ修正が必要となります。

13行目の箇所にメンテナンスの終了時間を設定しましょう。

ここまで正常に完了していれば下記画像のような表示になります。

※時間がちっさいですがこれは各自好きなCSSを当ててください。

動作としては時間が0になればページの再読み込みがかかります。

また、PCとサーバーの時間がズレていた時のために初めから0秒だと再読み込み等を促す案内が流れる仕組みとなっています。

※使用しているサーバーのスペックや予想ユーザー数次第では自動再読み込みではなくメッセージの表示に変更するなど工夫しましょう。

 

 

ただ、このままだとただカウントダウンされるだけでメンテナンスは終了しないので終了させる処理を追記します。

functions.phpに以下コードを追加しましょう。

 

ここも少し修正が必要となり、6行目にメンテナンスの終了時間を設定しましょう。

 

 

以上で設定は完了です。

 

最終的にfunctions.phpへの追記は以下内容となります。

 

 

注意点

今回紹介した方法にはいくつか注意点があります。

まず、サイトの公開が完了したあとはfunctions.phpに追記した32行目のフィルターをコメントアウトして管理画面のプラグイン設定からメンテナンスモードをオフに変更しておきましょう。

また、カウントダウン表示自体はプラグインを有料のPRO版にアップグレードすることにより実装することも可能です。

プラグインのアップデートによる不具合の可能性もあるので基本的にはPRO版をおすすめいたします。(開発者のためにもなります)

 

NEWS

こちらもおすすめ