阻止WordPress对不存在的URL进行“猜测”重定向

时间:2011-09-08 作者:supertrue

Wordpress有时会“猜测”一个不存在的页面段塞的重定向,如果该段塞位于另一个URL的开头。经过一些搜索,我的假设是,规范重定向功能的这一部分可以使用以下代码禁用:

remove_filter(\'template_redirect\', \'redirect_canonical\'); 
然而,我喜欢规范重定向的想法,并且不希望完全关闭它。有没有办法只禁用slug“猜测”?我更喜欢404而不是错误的301。

1 个回复
最合适的回答,由SO网友:postpostmodern 整理而成

这有点老套,但这应该行得通:

function no_redirect_guess_404_permalink( $header ){
    global $wp_query;

    if( is_404() )
        unset( $wp_query->query_vars[\'name\'] );

    return $header;
}

add_filter( \'status_header\', \'no_redirect_guess_404_permalink\' );

结束