página error 404 en wordpress

Presentar una página para todas aquellas búsquedas o urls inexistentes en el blog o en cualquier site es fundamental.
Es fundamental a nivel de usabilidad, ya que el usuario sabrá que esa página no existe y podemos mostrarle unos contenidos relacionados para que no le resulte “hostil” nuestro site y no se acabe marchando, y también es fundamental a nivel SEO incorporar una cabecera 404.

Suele pasar a veces que hay páginas en nuestra web, que no muestran el contenido que nosotros deseamos o éstos no se encuentran, por ejemplo en un buscador, para ello es fundamental a nivel de seo enviar una cabecera 404.
En SEO la cabecera 404, Google la tendrá en cuenta como que es una página que no tiene que indexar, y evitamos que Google indexe páginas irrelevantes y que puedan causar “conflictos” o problemas a nivel de SEO. Esto se solventa como he indicado metiendo una cabecera 404 al inicio del script.
Esto será fundamental en nuestra página 404 para resultados no encontrados en nuestro blog con wordpress

    header("HTTP/1.1 404 Not Found");

Para crear nuestra página 404 personalizada en wordpress, tendremos que crear el archivo 404.php en la carpeta del tema que estos usando tipo: /wp-content/themes/mi_tema/404.php

Como he indicado antes, es fundamental incluir al inicio del código la cabecera 404 con el mensaje Not found

Nota: el código indicado aquí es un ejemplo, y posiblemente no saldrá maquetado como queréis.
Repito es un ejemplo del código a usar, y como crear un pequeño script para sacar una búsqueda relacionada con lo que se obtiene de la url. Tambien una buena idea es incorporar un formulario de busqueda como el que añado al final del código

<?php
    header("HTTP/1.1 404 Not Found");
    
    get_header();  // cargamos la cabecera
    get_sidebar(); // caramos el sidebar o menu lateral
    ?>
    <h2>Página no encontrada!</h2>
    <p>La pagina a la que has accedido no existe o se ha borrado.</p>
    <h2>Artículos sugeridos</h2>
    
<?php
// código para realizar una búsqueda interna relacionando con lo que hay en la url
        $search_term = substr($_SERVER['REQUEST_URI'],1);
        $search_term = urldecode(stripslashes($search_term));
        $find = array ("'.html'", "'.+/'", "'[-/_]'") ;
        $replace = " " ;
        $search_term = trim(preg_replace ( $find , $replace , $search_term ));
        $search_term_q = preg_replace('/ /', '%20', $search_term);
        $search_url = 'http://www.pedroventura.com/?s=';
        $full_search_url = $search_url . $search_term_q;
?>
        <p>Buscando por: <a href="<?php echo $full_search_url; ?>" rel="nofollow"><?php echo $search_term; ?></a></p>
          
<?php $my_query = new WP_Query("s=" . $search_term_q); ?>
        <ol>
<?php while ($my_query->have_posts()) : $my_query->the_post(); ?>
            <li>
                <h4><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
                <p><?php the_excerpt(); ?></p>
                <p><a href="<?php the_permalink(); ?>">Seguir leyendo...</a></p>
            </li>
<?php endwhile; ?>
        </ol>
        
        <p>Intenta realizar una búsqueda sobre algo que estés interesado.</p>

        <form  method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
            <div style="text-align:center">
                <p><input type="text" name="s" id="s" size="15" /></p>
                <p><input type="submit" name="submit" value="<?php _e('Search'); ?>" /></p>
            </div>
        </form>

<?php 
    get_footer(); // cargamos el pie
?>

2 opiniones en “página error 404 en wordpress”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *