Cum împiedicăm redirecționarea automată a erorilor 404 și a URL-urilor "incorecte"?
WordPress are o funcționalitate prin care va redirecționa automat URL-urile dacă le percepe ca fiind scrise greșit. Iată un exemplu: Am o pagină numită my-page
Dacă accesez:
www.mysite.com/something/my-page/
voi fi redirecționat imediat către
www.mysite.com/my-page/
deoarece nu există nimic la primul URL.
Cum pot dezactiva această funcționalitate și să primesc în schimb o eroare 404 dacă sunt introduse URL-uri incorecte?

Poți să mă ghidezi pentru ce face acest lucru? Ce este o redirecționare canonică? Sunt nou în WordPress

Nu există nicăieri unde să putem vedea aceste redirecționări pentru a le putea elimina una câte una?

Este minunat. Știi de ce wp-admin
ar putea să facă în continuare redirectare după utilizarea acesteia?

Poți găsi o explicație detaliată a acestei probleme la https://www.dev4press.com/blog/wordpress/2015/canonical-redirect-problem-and-solutions/

După cum a sugerat Ash, puteți dezactiva această funcționalitate folosind următorul cod:
remove_action('template_redirect', 'redirect_canonical');
Analizând funcția redirect_canonical din canonical.php, se pare că puteți modifica comportamentul folosind propriul filtru.
La sfârșitul funcției redirect_canonical(), există un apel pentru a filtra răspunsul final:
$redirect_url = apply_filters( 'redirect_canonical', $redirect_url, $requested_url );
Așadar, puteți scrie propriul filtru pentru a modifica redirecționarea finală sau pentru a returna null și a opri redirecționarea, în funcție de input, dezactivând astfel funcționalitatea pentru un anumit URL sau un subset de URL-uri.

Acest SO arată mai multe detalii despre cum să adaugi un filtru pentru cei ca mine care sunt puțin noi în WP

Poți dezactiva ghicirea permalink-urilor pentru erorile 404 fără a dezactiva redirecționarea URL-urilor canonice prin adăugarea următoarei linii de cod undeva în codul tău (de ex. în functions.php
):
add_filter('do_redirect_guess_404_permalink', '__return_false');
Funcțiile relevante în codul WordPress sunt redirect_canonical
și redirect_guess_404_permalink
în wp-includes/canonical.php
.

Interesant este că documentația pare învechită, deoarece menționează că redirect_canonical
este atât pentru redirecționări la nivel de TLD, cât și pentru redirecționări de eroare 404...
