Pendant les phases de tests ou de débogage, il peut être utile d’activer un mode maintenance WordPress tout en autorisant votre IP (ainsi que d’autres adresses IP que vous pouvez autoriser pour contourner le mode maintenance WordPress et accéder au site normalement. 

Créer une page maintenance statique

Créer une page maintenance.php que vous placerez à la racine de votre WordPress. Voici un code pour ce fichier, avec un peu de style css pour rendre le message moins austère.

				
					<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Site en maintenance</title>
    <!-- Inclure une police Google Fonts si besoin -->
    <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap">
    <style>
        body {
            font-family: 'Roboto', sans-serif;
            background-color: #f5f5f5;
            color: #333;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 100vh;
            margin: 0;
        }
        .container {
            background-color: #fff;
            padding: 40px;
            border-radius: 10px;
            box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.1);
            text-align: center;
            max-width: 600px;
            width: 100%;
        }
        h1 {
            font-size: 2.5rem;
            margin-bottom: 20px;
            color: #d9534f; /* Rouge ou couleur personnalisée */
        }
        p {
            font-size: 1.2rem;
            margin-bottom: 0;
        }
    </style>
</head>
<body>
    <div class="container">
        <h1>Site en maintenance</h1>
        <p>Ce site est actuellement en maintenance. Merci de revenir plus tard.</p>
    </div>
</body>
</html>

				
			

Ajoutez la fonction de redirection

Relevez votre adresse IP sur ce site. Dans le fichier functions.php de votre thème enfant, placez cette fonction (en plaçant votre IP dans le array(). Il vous est possible de placer plusieurs IP autorisées.

				
					function activer_mode_maintenance() {
	
     // Remplacez ces IP par celles que tu veux autoriser
    $ip_autorisees = array('123.123.123.123', '234.234.234.234', '345.345.345.345'); // Ajouter plusieurs IP ici si besoin
	$ip_utilisateur = $_SERVER['REMOTE_ADDR'];

    // Autoriser uniquement les IPs autorisées
    if (in_array($ip_utilisateur, $ip_autorisees)) {
        return;
    }
	// Rediriger vers un fichier maintenance.php statique
    wp_redirect('/maintenance.php');
    exit;
}
add_action('template_redirect', 'activer_mode_maintenance');

				
			

Résultat du mode maintenance WordPress

De cette façon, lorsque des visiteurs dont l’IP n’est pas autorisée viendront sur le site, ils verront :

Mode maintenance WordPress

Laisser un commentaire