我面临着wordpress搜索的问题。假设网址http://www.ampercent.com/search/page/2/不存在。但它显示200好的状态而不是404找不到。如何为这些页面返回404。此类链接正在创建404软错误问题。当您在wordpress中搜索空查询时会发生这种情况。例如http://www.ampercent.com/?s=
请帮助我一些。
答案 0 :(得分:1)
是的,可用的解决方案,基本上是" 404软"当一些搜索完成并且没有在页面上找到内容时生成,或者某些时候它可能是非常少的内容或不适当的东西。
您可以使用以下自定义代码强制此类页面在404重定向。
将以下代码放在你的functions.php中:
function force_404()
{
if ( have_posts() )
{
return FALSE;
}
header( 'HTTP/1.0 404 Not Found' );
locate_template( '404.php', TRUE, TRUE );
$GLOBALS['wp_query']->is_404 = TRUE;
return TRUE;
}
现在将上面的函数调用到你的文件top.php& page.php如下:
if ( force_404() ) {
return; //here it will stop any further process so soft 404 will not occur
}
//your file other code continue
希望以上将有助于解决您的问题。
答案 1 :(得分:0)
一个简单的解决方法是在404.php文件中强制执行标头调用。
例如:
<?php header('HTTP/1.0 404 Not Found'); ?>
<?php get_header(); ?>