Вставь этот код в самый верх страницы 404.php:
<?php
header('Location: http://localhost/localblog/');
exit;
?>
или этот:
<?php
header('Refresh: 3; URL=http://localhost/localblog/');
exit;
?>
тогда Refresh: 3; — кол-во секунд через сколько секунд пользователь будет перенаправлен на главную страницу.
1. Будет хорошо, если http://localhost/localblog/
заменить на что-то типо bloginfo(‘url’);, но у меня что-то не получилось так сделать.
2. Хорошо бы если кто-то написал здесь js-код Обратного отсчёта:
Вы будете перенаправлены на главную страницу через 5… 4… 3… сек.
http://localhost/localblog/
заменить на что-то типа bloginfo('url');
<?php
header('Location: ' . get_bloginfo('url'));
exit;
?>
Я бы порекомендовал пересылать пользователя не на главную, а выдавать ему результаты поиска:
<?php $s = $wp_query->query_vars['name'];
$s = preg_replace("/(.*)-(html|htm|php|asp|aspx)$/","$1",$s);
$s = str_replace("-"," ",$s);
$posts = query_posts('post_type=any&s='.$s); ?>
<div id="searchtab">
<div>
<form method="get" id="searchform" action="http://tigor.org.ua/">
<fieldset>
<input type="text" name="s" id="searchbox" value="<?php echo $s;?>" onfocus="if(this.value == 'Поиск') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Поиск';}" />
<input type="submit" value="Go" />
</fieldset>
</form>
</div>
</div>
<?php if (count($posts) > 0) { echo "<p>Сожалеем, но страница на которую вы перешли не существует. Возможно вы искали <strong>одну из этих</strong> статей или страниц?</p>"; echo "<ul>"; foreach ($posts as $post) { ?>
<h3><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
<small><?php the_time('l, F jS, Y') ?></small>
<p><?php the_excerpt(); ?></p>
<p><?php the_tags(); ?><br />Опубликовано в категории: <?php get_the_category_list(', ');?> | <?php comments_popup_link(); ?></p>
<?php
}
}
?>
http://tigor.org.ua/custom-error-404-page/