Skip to:
Content
Pages
Categories
Search
Top
Bottom

Re: Help! 404 error, but page displays


Greg
Participant

@rebootnow

Looks like WordPress is setting the 404 because it doesn’t recognize the bbPress page that is loading.

When the global WP object is constructed, the function WP->handle_404 calls “status_header( 404 )”.

As a workaround, I modified “handle_404” to lay off the 404 if “BB_PATH” is defined (i.e. when a bbPress page is loading). This seems to work ok.

Here’s the new “handle_404” at around line 445 in “wp-includes/classes.php”.

function handle_404() {
global $wp_query;

if ( !defined( 'BB_PATH' ) && (0 == count($wp_query->posts)) && !is_404() && !is_search() && ( $this->did_permalink || (!empty($_SERVER['QUERY_STRING']) && (false === strpos($_SERVER['REQUEST_URI'], '?'))) ) ) {

// Don't 404 for these queries if they matched an object.
if ( ( is_tag() || is_category() || is_author() ) && $wp_query->get_queried_object() ) {
if ( !is_404() )
status_header( 200 );
return;
}
$wp_query->set_404();
status_header( 404 );
nocache_headers();
} elseif ( !is_404() ) {
status_header( 200 );
}
}

Skip to toolbar