Uważam, że jest to redirect_canonical
funkcja uzależniona template_redirect
. Powinieneś być w stanie to wyłączyć za pomocą:
remove_filter('template_redirect', 'redirect_canonical');
Ale naprawdę powinieneś pomyśleć, czy chcesz to zrobić, ponieważ jest to dość skomplikowane i wykonuje kilka ważnych funkcji SEO:
Przekierowuje przychodzące linki do właściwego adresu URL na podstawie adresu URL witryny.
Wyszukiwarki uważają www.somedomain.com i somedomain.com za dwa różne adresy URL, gdy oba znajdują się w tej samej lokalizacji. To ulepszenie SEO zapobiega karom za zduplikowane treści poprzez przekierowanie wszystkich przychodzących linków do jednego lub drugiego.
Zapobiega przekierowywaniu kanałów, trackbacków, wyszukiwań, wyskakujących komentarzy i adresów URL administratora. Nie przekierowuje na IIS 7 nieobsługujących permalinków, podglądów stron / postów, administratora WP, Trackbacks, robots.txt, wyszukiwań ani żądań POST.
Spróbuje również znaleźć poprawny link, gdy użytkownik wpisze adres URL, który nie istnieje na podstawie dokładnego zapytania WordPress. Zamiast tego spróbuje przeanalizować adres URL lub zapytanie w celu znalezienia właściwej strony, do której należy przejść.
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/canonical.php#L13
Następujące działania mogą zabić autouzupełnianie bez bałaganu w komponencie SEO, ale nie mogę tego obiecać. Kod jest ledwo testowany, ponieważ nigdy nie chciałem tego wyłączać. Naprawdę musiałbym się uczyć, redirect_canonical
aby być pewnym.
function kill_404_redirect_wpse_92103() {
if (is_404()) {
add_action('redirect_canonical','__return_false');
}
}
add_action('template_redirect','kill_404_redirect_wpse_92103',1);