如何在WordPress页面中隐藏404状态代码?

时间:2010-06-14 作者:markratledge

我有一个WordPress网站,其中包括从不同数据库提取的页面。问题是这些其他页面返回404状态代码。(WordPress帖子/页面很好。)

404\'ed页面显示良好,我从WordPress的标题标签中删除了“未找到页面”文本。但是Googlebot和W3C看到了404标题。

那么:哇,有人告诉Apache取消404状态吗?Apache会覆盖WordPress的404头吗?

这有意义吗?我应该查看哪些其他信息和内容?

我可以在中抑制状态代码吗。htaccess这样我就不会更改WP核心文件了?

3 个回复
最合适的回答,由SO网友:Aaron Harun 整理而成

您可以向页面添加自定义重写。或者在包装其他页面的模板文件顶部仅输出header(\'HTTP/1.1 200 OK\');.

SO网友:Philipp

WordPress提供该功能status_header() 返回正确的状态代码。

您可以在WordPress模板/函数中调用此函数:

// Will return http status header "200 OK"
status_header(200);

SO网友:Jonathan MacDonald

查看pre\\u handle\\u 404挂钩(在v4.5.0中添加):https://developer.wordpress.org/reference/hooks/pre_handle_404/

// add to your functions.php
add_filter(\'pre_handle_404\', function($preempt, $wp_query) {
    global $wp;
    $customPages = [\'custom-1\',\'custom-2\',\'custom-3\'];

    if (in_array($wp->request, $customPages)) {
      $preempt = true;
    }

    return $preempt;
}, 10, 2);

结束