wp_maintenance()


WordPressのwp_maintenance()関数は、ウェブサイトをメンテナンスモードにするための内部関数です。この関数は、通常、更新プロセス中に利用され、訪問者にメンテナンス画面を表示します。

構文

wp_maintenance();

注意事項

  • この関数は引数を取りません。
  • テーマやプラグインで直接使用することは推奨されません。
  • メンテナンスモードを有効にするには、手動で.maintenanceファイルを作成する必要があります。

例1: メンテナンスモードのファイル確認

.maintenanceファイルの存在を確認し、条件に応じてメンテナンスメッセージを表示します。

<?php
if ( file_exists( ABSPATH . '.maintenance' ) ) {
    echo '現在メンテナンス中です。';
}
?>

例2: メンテナンスモードの開始

サイトをメンテナンスモードに設定するために.maintenanceファイルを作成します。

<?php
file_put_contents( ABSPATH . '.maintenance', '<?php $upgrading = time(); ?>' );
?>

例3: メンテナンスモードの解除

メンテナンスモードを終了するには.maintenanceファイルを削除します。

<?php
if ( file_exists( ABSPATH . '.maintenance' ) ) {
    unlink( ABSPATH . '.maintenance' );
}
?>

例4: メンテナンス状態のログ記録

メンテナンスモードの開始時間をログに記録します。

<?php
if ( file_exists( ABSPATH . '.maintenance' ) ) {
    error_log( 'メンテナンスモード開始: ' . date( 'Y-m-d H:i:s' ) );
}
?>

例5: メンテナンス時のIPホワイトリスト

特定のIPアドレスからのアクセスを許可します。

<?php
$allowed_ips = array( '123.123.123.123' );
if ( file_exists( ABSPATH . '.maintenance' ) && !in_array( $_SERVER['REMOTE_ADDR'], $allowed_ips ) ) {
    die( '現在メンテナンス中です。' );
}
?>

関連機能: