Cómo personalizar la página site-offline

La página site-offline se muestra cuando ponemos el sitio en mantenimiento (admin/settings/site-maintenance), o cuando Drupal no puede conectarse a la base de datos.

Aquí me refiero al segundo caso.

Para probar esta característica, puede apagar el servidor de base de datos.

También puede cambiar temporalmente el archivo sites/default/settings.php poniendo parámetros erroneos de conexión. Por ejemplo:

sites/default/settings.php
...
#$db_url = 'mysqli://mydatabase:clave@localhost/mydatabase';
$db_url = 'mysqli://mydatabase:clave_erronea@localhost/mydatabase';
...

1
En sites/default/settings.php, indicar el nombre del tema que contendrá a maintenance-page-offline.tpl.php, la página personalizada.

Hay unas líneas que se pueden descomentar para eso, pero quizás lo más sencillo sea agregar las que necesitamos al final. Por ejemplo, usaré el tema minnelli, que viene por default con Drupal:

sites/default/settings.php
...
$conf['maintenance_theme'] = 'minnelli';
...

2
En el directorio del tema, crear, si no existe, el archivo maintenance-page-offline.tpl.php.
Esto se puede hacer copiando el archivo page.tpl.php del tema y renombrandolo.
O también, copiando el archivo maintenance-page.tpl.php del tema y renombrándolo.
En este caso, uso la segunda opcion.

3
Personalizar maintenance-page-offline.tpl.php.
Como se recuerda, esta página aparece cuando no hay acceso a la base de datos, así que hay que colocar algunas cosas en hardcode.
Por ejemplo, redefinir el valor de algunas variables y reemplazar el $content:

maintenance-page-offline.tpl.php
...
$site_name = 'My Drupal Site';
$logo = FALSE;
...
<div class="clear-block">
  <!--?php print $content ?-->
  <p>
    En este momento el site no está disponible debido a problemas técnicos.
    Por favor intente de nuevo más tarde.
    Gracias por su comprensión.
  </p>
  <hr />
  <small>
    Si es el administrador de este site, por favor verifique el acceso a la base de datos.
    Para más ayuda, puede revisar el <a href="http://drupal.org/node/258">manual</a>.
  </small>
</div>
...

Referencias

Comentarios

Entradas populares de este blog

Debug con Xdebug y Aptana (y Notepad++)

Drupal sí, drupal no

CSS3 para mejorar el breadcrumb de un tema Zen