SERGIOIGLESIAS

Blog sobre Joomla

Cómo personalizar página de error 404 en Joomla!

Todos conocemos la página de error 404 que muestra Joomla! por defecto y sabemos que no es lo mejor que podemos presentar en nuestro sitio web. Si utilizamos alguna plantilla de algún desarrollador ésta suele venir ya adaptada al diseño de ese template. Pero... qué pasa si queremos personalizarla más.

Vamos a ver cómo personalizar esta página de Joomla!

Página de error 404 de Joomla

Página de error 404 de Joomla

Fichero error.php

Para personalizar esta página de error 404 (u otra, como 403), vamos a buscar el fichero error.php que se encuentra en la plantilla que tengamos seleccionada.
Evidentemente, si no tiene este fichero, lo creamos.

En este fichero encontraremos diferentes códigos en función de la plantilla y del desarrollador.

Antes de nada, hacemos una copia de este fichero por si queremos volver a ponerlo.

Código en error.php de Protostar

Y sin más, nos ponemos manos a la obra (lo que vemos arriba en la imagen es parte del código que viene en el fichero error.php de la plantilla Protostar, que es la que viene por defecto en Joomla).

Paso 1

Eliminamos todo el código que haya en este fichero.

Fácil, ¿no?

Paso 2

Añadimos el siguiente código PHP, haciendo uso de la API de Joomla.

<?php
defined('_JEXEC') or die;
$app = JFactory::getApplication();
if ($this->error->getcode() == '404') {
  $app->redirect($this->baseurl.'/error-404');
}
?>

Con esto simplemente estamos diciendo que si hay un error 404 (página no encontrada) haga una redirección y nos muestre la página que tengamos creada con el alias "error-404", es decir, que vaya a www.misitio.com/error-404.

Código personalizado para error.php

Y esto... ¿Cómo lo creamos? Vamos a continuar con este tip Joomla.

Paso 3

Creamos un artículo que contenga el contenido que queramos mostrar. Esto ya a gusto de cada uno.

Paso 4

Creamos un ítem de menú y lo llamamos, por ejemplo, Error 404, y en el alias ponemos error-404

Esto último es importante. Lo que pongamos en el alias es lo que tenemos que poner en el código del paso 2. Es decir, si el alias fuera pagina-no-encontrada, entonces, el código quedaría de la siguiente manera:

<?php
defined('_JEXEC') or die;
$app = JFactory::getApplication();
if ($this->error->getcode() == '404') {
  $app->redirect($this->baseurl.'/pagina-no-encontrada');
}
?>

Paso 5

Ahora ya podemos asignar los módulos que queramos para poder añadir más valor a esta página.

Por ejemplo, si tienes newsletter y quieres poner aquí el formulario de suscripción es una buena forma de poder ganar un usuario más. Puedes poner el módulo de últimos artículos de tu blog, o el del buscador... En fin, aquí, también, a gusto de cada uno.

Si quieres, puedes ver cómo lo he implementado yo aquí te dejo una captura de pantalla:

Página de error 404 personalizada en sergiois


Espero que os haya resultado sencillo este tip para Joomla!. Cualquier comentario ya sabéis que es bienvenido.

¿Te ha gustado el artículo?

Suscríbete a mi newsletter y recibe contenido exclusivo.
Podrás hacer gratis un Curso de desarrollo de plantillas Joomla.

4 comentarios

  1. Lunes, 20 Julio 2020 01:53
    muy bueno, me funcionó ! gracias
  2. Jueves, 01 Marzo 2018 00:23
    Excelente artículo, muy bien explicado y detallado. Muchas gracias.
  3. Miércoles, 28 Septiembre 2016 09:16
    Gracias Manuel!<br /><br />Me alegro que te haya gustado el artículo.<br /><br />Un saludo,
  4. Miércoles, 28 Septiembre 2016 00:48
    Muy bueno tu articulo, explicas fácil el proceso en 5 pasos.<br /><br />Gracias por tu trabajo.

Artículos relacionados

Solicita presupuesto

¿Quieres una página web que funcione?

Contacta conmigo y hablemos de tu proyecto.