Что такое редиректы и почему их нужно удалять
Редиректы — это автоматические переадресации с одного URL на другой. Они полезны для SEO, перенаправления устаревших страниц и управления трафиком. Однако избыточные или неправильные редиректы могут замедлять сайт, ухудшать пользовательский опыт и приводить к циклам перенаправлений. Поэтому важно уметь выявлять и удалять ненужные или ошибочные редиректы в WordPress.
В этой статье разберёмся, как найти все активные редиректы, какие плагины помогут, а также рассмотрим примеры кода для удаления редиректов программно.
Обнаружение редиректов в WordPress
Первый шаг — понять, какие редиректы у вас есть. Редиректы могут быть настроены в .htaccess, в плагинах SEO, в плагинах кэширования или в коде темы. Чтобы найти их, можно использовать несколько методов.
Использование инструментов проверки HTTP
Сервисы вроде httpstatus.io или расширения для браузера, например, Redirect Path, позволяют проверить цепочку редиректов для любого URL. Это поможет понять, где именно происходит перенаправление.
Плагины для управления редиректами
Один из самых популярных плагинов — Redirection. Он не только позволяет создавать, но и просматривать все существующие редиректы. Также можно увидеть логи срабатывания редиректов и экспортировать их для анализа.
Удаление редиректов с помощью плагинов
Если вы используете плагин Redirection, удалить редирект просто:
- Перейдите в раздел Инструменты > Redirection в админке WordPress.
- Найдите ненужный редирект в списке.
- Нажмите на кнопку «Удалить» рядом с ним.
Если редиректы настроены в других SEO-плагинах (Yoast, Rank Math), зайдите в их настройки и проверьте раздел редиректов.
Удаление редиректов из .htaccess
В некоторых случаях редиректы прописаны напрямую в файле .htaccess. Чтобы их удалить, подключитесь к сайту через FTP или файловый менеджер хостинга и отредактируйте этот файл.
Пример редиректа в .htaccess:
Redirect 301 /staryj-url/ https://example.com/novyj-url/Удалите или закомментируйте строки с нежелательными редиректами.
Удаление редиректов программно: пример функции для wplancer
Если нужно программно удалить или отменить редиректы, можно использовать хук template_redirect и отменить редирект.
Пример функции, которая отменяет редиректы для определённых URL:
function wplancer_cancel_redirects() {
$current_url = home_url(add_query_arg(array(), \$_SERVER['REQUEST_URI']));
$blocked_redirects = array(
home_url('/staryj-url/'),
home_url('/drugoj-redirekt/'),
);
if (in_array($current_url, $blocked_redirects)) {
remove_action('template_redirect', 'redirect_canonical');
}
}
add_action('template_redirect', 'wplancer_cancel_redirects', 1);Эта функция проверяет текущий URL и отменяет стандартный редирект WordPress, если URL совпадает с блокируемым.
Почему это важно
Стандартный редирект WordPress часто вызывает автоматическую переадресацию, например, с URL без слеша на URL со слешем. Если нужно отменить это поведение для конкретных страниц, такой код пригодится.
Полезные плагины для управления редиректами
Помимо Redirection, есть ещё несколько полезных инструментов:
- Safe Redirect Manager — простой и лёгкий плагин для управления редиректами без лишних функций.
- Yoast SEO Premium — встроенный менеджер редиректов с удобным интерфейсом.
- Rank Math — SEO-плагин с расширенным управлением редиректами.
Все эти плагины позволяют быстро найти и удалить ненужные редиректы без опасности для сайта.
Как избежать проблем с редиректами в будущем
Чтобы не накапливать ненужные редиректы, придерживайтесь простых правил:
- Регулярно проверяйте список редиректов в используемых плагинах.
- Удаляйте устаревшие или временные редиректы.
- Используйте минимальное количество редиректов для улучшения скорости сайта.
- Тестируйте сайт после установки новых плагинов или изменений, чтобы не создавать циклы редиректов.
Такой подход поможет поддерживать сайт быстрым и удобным для посетителей и поисковых систем.