Written by Kasumi

【WordPress】サイトの公開予約を設定する方法【メンテナンスモード】

WordPressサイトで本番公開の日時を予約。

予約した日時の公開まではメンテナンスページなどを用意して、サイトを閲覧できないようにしたい。

本記事ではこのような悩みを解決します。

functions.phpにコードを記述

//-----------------------------------------------------
// サイト公開までメンテナンスページを表示
//-----------------------------------------------------
function maintenance_mode()
{

  date_default_timezone_set('Asia/Tokyo'); //日本時間タイムゾーン 
  //メンテナンスモード開始日時
  $startDate = '2024-03-01 10:00:00';
  //メンテナンスモード終了日時
  $endDate = '2024-04-01 12:00:00';

  if (strtotime(date('Y-m-d H:i:s')) >= strtotime($startDate) && strtotime(date('Y-m-d H:i:s')) < strtotime($endDate)) {
    if (!current_user_can('edit_themes') || !is_user_logged_in()) {
      wp_die('<h1>メンテナンス中</h1><br />現在、サイトはメンテナンス中です。');
    }
  }
}
add_action('get_header', 'maintenance_mode');

WordPressサイトで本番公開の日時を予約するコード例です。

上記コードをfunctions.phpに記述します。

このコードはWPのアクションフックを使って、メンテナンスモードを実行する関数です。

wp_die関数を使う事でWPのメンテナンス(エラー)ページを表示。

引数にメンテナンスの内容をテキストで指定する事が出来ます。

if文とdate関数を用い、上記関数を指定した公開日時まで実行する処理をしています。

またWP管理画面のログイン・非ログインを判断。

ログイン時はメンテナンスページを非表示にしてます。

以上で公開予約の完了です。

まとめ

WordPressでサイトの公開予約を設定する方法について紹介しました。

以上で解説を終わります。

目次

関連記事

WordPress

【WordPress】タクソノミーのアーカイブでターム名を表示・取得する方法【single_term_title】

2023.05.29
2986
WordPress

WordPressでファイルを更新したらキャッシュを自動的に削除する方法

2023.02.10
1119
WordPress プログラミング

ワードプレスのツールバー(アドミンバー)を表示・非表示にする方法

2020.05.29
930
WordPress

サイドバー・フッターでよく使う一覧リストの出し方【まとめ】【ワードプレス】

更新日:2019.11.28
761