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.
Cómo personalizar el error 404 en #Joomla y ventajas de ello #MejorConJoomla Postéalo
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
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.
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).
Pasos para personalizar página de error 404 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'); } ?>
Para Joomla 4 el código quedaría así:
<?php use Joomla\CMS\Factory; defined('_JEXEC') or die; $app = Factory::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.
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 - Ventajas
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:
Para Joomla 4 el resultado es el siguiente:
Puedes usar también el siguiente override que tiene listo la web de web-eau.net para poner en tu template: Override error 404.
Espero que os haya resultado sencillo este tip para Joomla! sobre cómo personalizar la página de error 404 en Joomla.
Cualquier comentario ya sabéis que es bienvenido.
Cómo personalizar el error 404 en #Joomla y ventajas de ello #MejorConJoomla Postéalo
Muy bueno tu articulo, explicas fácil el proceso en 5 pasos.
Gracias por tu trabajo.