Как отключить автоматическое перенаправление несуществующих адресов в WordPress
По умолчанию при возникновении ошибки 404, WordPress пытается подобрать запись или страницу по совпадению начала адреса и перенаправить на неё. Сегодня разберёмся как можно отключить этот механизм.
Видеоруководство
Продемонстрировать работу данного механизма довольно просто. Создадим страницу «Привет» с адресом «privet» и введем в адресную строку браузера только его часть, например, «pri». В этом случае, WordPress вместо ошибки 404 (страница не найдена) — перенаправит нас на страницу «Привет».
Если вы хотите запретить WordPress корректировать несуществующие URL, то можно воспользоваться плагином Disable URL Autocorrect Guessing (плагин заработает сразу после установки и активации).
Альтернативный вариант решения вопроса — вставить данный сниппет.
1 2 3 4 5 6 7 |
function remove_redirect_guess_404_permalink( $redirect_url ) { if ( is_404() && !isset($_GET['p']) ) return false; return $redirect_url; } add_filter( 'redirect_canonical', 'remove_redirect_guess_404_permalink' ); |
Здравствуйте. Откуда берется этот параметр !isset($_GET[‘p’]) ?
Здравствуйте.
Параметр «p» будет передаваться, если в Настройки -> Постоянные ссылки выбран вариант «Простые» ( https://prnt.sc/nexvwa ).
А что делать, если я удалил страницу и появился реддирект на другую страницу. Плагинов никаких не использую по реддиректу. Куда капнуть?
Плагин Disable URL Autocorrect Guessing пробовали?