Tôi tin rằng đó là redirect_canonical
chức năng hooked template_redirect
. Bạn sẽ có thể vô hiệu hóa nó với:
remove_filter('template_redirect', 'redirect_canonical');
Nhưng bạn thực sự nên suy nghĩ về việc bạn có muốn làm điều đó không vì nó khá phức tạp và thực hiện một số chức năng SEO quan trọng:
Chuyển hướng các liên kết đến URL thích hợp dựa trên url trang web.
Các công cụ tìm kiếm coi www.somedomain.com và somedomain.com là hai URL khác nhau khi cả hai cùng đi đến một vị trí. Cải tiến SEO này ngăn chặn hình phạt cho nội dung trùng lặp bằng cách chuyển hướng tất cả các liên kết đến với một hoặc khác.
Ngăn chặn chuyển hướng cho nguồn cấp dữ liệu, theo dõi, tìm kiếm, cửa sổ bật lên nhận xét và URL quản trị viên. Không chuyển hướng trên IIS 7 không hỗ trợ permalink, xem trước trang / bài đăng, quản trị viên WP, Trackbacks, robot.txt, tìm kiếm hoặc trên các yêu cầu POST.
Cũng sẽ cố gắng tìm liên kết chính xác khi người dùng nhập URL không tồn tại dựa trên truy vấn chính xác của WordPress. Thay vào đó, sẽ cố phân tích URL hoặc truy vấn để cố gắng tìm đúng trang cần truy cập.
http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/canonical.php#L13
Những điều sau đây có thể giết chết tự động hoàn thành mà không gây rối với thành phần SEO, nhưng tôi không thể hứa điều đó. Mã này hầu như không được kiểm tra vì tôi chưa bao giờ muốn vô hiệu hóa điều này. Tôi thực sự phải nghiên cứu redirect_canonical
để chắc chắn về bất cứ điều gì.
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);