Par George

Avatar de George

WordPress – Jouer avec le mode maintenance

Lorsque l’on fait une mise à jour automatique de WordPress, un mode “maintenance” se lance, rendant temporairement votre blog inaccessible. Vos visiteurs ont alors droit à un message générique du type “Indisponibilité temporaire pour cause de maintenance. Veillez revenir dans un instant”.

Hélas, il est fréquent qu’une mise à jour “plante”, laissant votre site dans ce mode pour le moins désagréable lorsqu’il devient permanent.

Comment supprimer le mode maintenance ?

A la racine de WordPress se trouve un fichier caché “.maintenance”. Il suffit de le supprimer. Si vous ne trouvez pas ce fichier, il est probable que votre logiciel FTP ne vous montre pas les fichiers cachés. Pas de panique : uploader un nouveau fichier .maintenance vide à la racine de WordPress résoudra votre problème.

Comment déclencher le mode maintenance ?

En plaçant à la racine de WordPress un fichier .maintenance contenant la ligne suivante :

<?php $upgrading = time(); ?>

Ou si vous voulez programmer la fin de ce mode pour une heure précise :

<?php $upgrading = strtotime('2011-01-01 00:00'); //par exemple le 1er janvier 2011 à minuit ?>

La variable $upgrading attend un timestamp. Une fois la date dépassée, le blog quittera donc le mode maintenance.

Comment designer le mode maintenance ?

Il faut reconnaître que la page par défaut de ce mode est légèrement austère, et peu accueillante. Si vous voulez la personnaliser un peu, créez un fichier maintenance.php que vous placerez à la racine du répertoire wp_content/. Copiez/collez les quelques lignes de code ci-dessous :

<?php
$protocol = $_SERVER["SERVER_PROTOCOL"];
if ( 'HTTP/1.1' != $protocol && 'HTTP/1.0' != $protocol )
        $protocol = 'HTTP/1.0';
header( "$protocol 503 Service Unavailable", true, 503 );
header( 'Content-Type: text/html; charset=utf-8' );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<h1>Indisponibilité temporaire pour cause de maintenance. Veillez revenir dans un instant.</h1>
 
</body>
</html>
<?php die(); ?>

Il ne vous reste plus qu’à modifier le texte si vous le souhaitez, rajouter quelques images, un peu de css… Je suis certain que vous trouverez beaucoup d’idées pour le tunning de cette page si particulière.

Et si je ne veux pas du tout de mode maintenance ?

C’est simple, il suffit de dire à WordPress que l’heure est passée, en créant un fichier .maintenance à la racine du site contenant :

<?php $upgrading = 0; ?>


6 commentaires

  • Mia (3 comments), le 9 janvier 2011

    Bonjour, au fait ! quelqu’un a déjà réussi à faire une mise à jour de wordpress dans le panelcontrol et que cela eut fonctionné ?
    En ce qui me concerne, jamais.
    Merci pour ces tips que j’utiliserai pour l’update de plugin :)
    bonne journée.

  • George (169 comments), le 9 janvier 2011

    C’est un peu comme le loto, on a toujours l’espoir de gagner un jour ;)

  • WP-Crontrol, un crontab pour Wordpress & le mode maintenance « www.aurelienpiat.fr, le 4 février 2011

    [...] Du coup la nécessité de la compréhension du core WordPress est nécessaire, astuce découverte ici, explique que le mode maintenance génère un fichier .maintenance à la racine du site web, suivez [...]

  • Laurent (3 comments), le 16 février 2011

    Salut, moi j’ai des domaines où ça fonctionne, d’autre ou il n’y a rien à faire, je me demande à quoi ça tient…
    Si quelqu’un passe par là avec une indication, ça m’intéresse.

  • Pascal (5 comments), le 9 mars 2011

    Ouf…. merci merci merci pour cette info. Mon site http://www.world-of-design.info était resté scotché sur le message de maintenance et je ne savais plus comment en sortir.
    Merci encore.
    Pascal

  • George (169 comments), le 9 mars 2011

    Content d’avoir pu t’aider.
    Et sympa ton blog, ça aurait été dommage qu’il reste inaccessible.
    Bonne journée !

Poster un commentaire

Subscribe without commenting