wordpressのメモメモ。
すでに運用中のWebサイトをリニューアル・メンテナンスしたいとき、
サイトの公開を停止していることを訪問者に知らせるページ
を表示させます。(以降、メンテ画面)
メンテナンス中はサイト内のどこをアクセスしても、メンテ画面が表示されます。
その方法は色々ありますが、今回はプラグイン 【wp-maintenance-mode】
(以下、メンテモード)を使用します。
※wp-maintenance-modeは現在、 LightStart という名前に変わっているそうですが、基本的には同じです(この記事では旧版を使用しています)
やりたいこと
プラグイン「WP Maintenane Mode」を使用すると簡単にメンテナンスモードに切り替えることができます。
実際の画面は至ってシンプルで、プラグインの設定画面からは簡単な文字の装飾や背景の指定程度しかできません。(カスタムCSSはあります)
「メンテナンス中画面だけどもう少し凝ったページにしたい」
「運用中のWebサイトに合わせた見た目にしたい」
やり方
設定画面(※1)で設定した情報は下記テンプレートに反映されています。
/plugins/wp-maintenance-mode/views/maintenance.php
使用テーマ内に自分で用意したphpファイルを上記のテンプレートに上書きする形です。
使用テーマのパス (例: summer): wp-content/themes/summer/
- テーマのフォルダ直下に フォルダ
wp-maintenance-mode
を新規作成 - そのフォルダ内に
maintenance.php
を作成。
<?php get_header(); ?>
<header>
<h1>ただいまメンテナンス中です</h1>
</header>
<div class="container">
<p>ここに上書きしたコンテンツ</p>
</div>
<?php get_footer(); ?>
ヘッダー、フッターもメンテ画面独自のものにしたい場合は、
テーマのフォルダ直下(wp-content/themes/summer/
)のheader.php, footer.phpをコピペし、名前を変更
maintenance.php
の get_header()
, get_footer()
を以下のように修正する。
/* header-test.php */
<?php get_header("test"); ?>
/* footer-test.php */
<?php get_footer("test"); ?>
メンテ画面のテンプレートを任意のファイルに上書きすることができました。
/wp-content/themes/{your_theme}/wp-maintenance-mode/maintenance.php
/wp-content/themes/{your_child_theme}/wp-maintenance-mode/maintenance.php
/wp-content/themes/{your_theme}/header-test.php
/wp-content/themes/{your_theme}/header-footer.php