Where does is_404()
get set?
Looking at the source in query.php:
function is_404() {
global $wp_query;
if ( ! isset( $wp_query ) ) {
_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1' );
return false;
}
return $wp_query->is_404();
}
which just returns a value already set in $wp_query.
However, if I then set a breakpoint in set_query_var
this never gets hit.