If a visitor mistypes a URL to your WordPress blog or clicks on a link that does not exists, you can show them a more helpful 404 error page that will have suggestions pointing to related articles that they can check out on your WordPress site. Internally, it runs a search using the 404 page URL as the query parameter.
Save this file as 404.php and place it in your WordPress theme folder.
<?php get_header(); ?> <div id="content" class="section"> <h2>404 Error - Page not found</h2> <?php get_template_part('searchform'); ?> <?php global $wp_query; $wp_query->query_vars['is_search'] = true; $s = str_replace("-", " ", $wp_query->query_vars['name']); $loop = new WP_Query('post_type=any&s=' . $s); ?> <?php if ($loop->have_posts()): ?> <p>We tried finding the matching pages from our website. Here're some suggestions:</p> <ol> <?php while ($loop->have_posts()): $loop->the_post(); ?> <li> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a> <?php the_excerpt(); ?> </li> <?php endwhile; ?> </ol> <?php endif; ?> </div> <?php get_sidebar(); ?> <?php get_footer(); ?>