How to prevent automatic redirection of 404 errors and “incorrect” URLs?

WordPress has a feature whereby it will automatically redirect your URLs if it percieves them to be written wrongly. Here is an example: I have a page called my-page

If I go to:

www.mysite.com/something/my-page/

it will immediately redirect me to

www.mysite.com/my-page/

as nothing exists at the first URL.

How can I turn this feature off, and instead just get a 404 if incorrect URL’s are typed in?

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

This worked for me:

remove_action('template_redirect', 'redirect_canonical');

Method 2

As Ash suggested, you can turn off the feature by using the following code:

remove_action('template_redirect', 'redirect_canonical');

In looking at the redirect_canonical function in canonical.php, it would appear you can also modify the behavior with your own filter.

At the end of the redirect_canonical() function, there is a call to filter the final answer:

$redirect_url = apply_filters( 'redirect_canonical', $redirect_url, $requested_url );

So you could write your own filter to modify the final redirection or return null to stop the redirection, based upon the input, thus turning off the feature for a particular URL or a subset of URLs.

Method 3

You can disable permalink guessing for 404s without disabling redirection of canonical URLs by adding the following line somewhere in your code (eg. in functions.php):

add_filter('do_redirect_guess_404_permalink', '__return_false');

Relevant functions in the WordPress code are redirect_canonical and redirect_guess_404_permalink in wp-includes/canonical.php.


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x