Как настроить 301 редирект в WordPress

Если вы сменили адрес страницы, удалили материал или переехали на новый домен, старый URL не должен вести в пустоту. 301 редирект сообщает браузеру и поисковым системам, что страница навсегда переехала на новый адрес. Для посетителя это означает автоматический переход, для сайта — сохранение части SEO-сигналов и снижение риска потерять трафик на старых ссылках.

В WordPress редирект можно настроить тремя практичными способами: через плагин, через файл .htaccess на Apache или через PHP-код в теме/плагине. Для большинства сайтов самый удобный вариант — плагин. Если нужен полный контроль и у вас есть доступ к серверу, подойдёт серверная настройка.

Когда нужен 301 редирект

301 используют в случаях, когда старый адрес больше не должен открываться как отдельная страница:

  • вы изменили URL записи или страницы;
  • удалили материал, но у него были внешние ссылки или трафик из поиска;
  • объединили несколько страниц в одну;
  • переехали на новый домен или на HTTPS;
  • исправили структуру постоянных ссылок;
  • убрали дубли и хотите оставить только один канонический адрес.

Если страница удалена без замены и у неё нет ценности для пользователей, иногда лучше отдать 410 Gone, а не редиректить всё подряд. Но если есть релевантная новая страница, 301 — правильный выбор.

Самый простой способ: плагин для редиректов

Если вы не хотите править серверные файлы и боитесь сломать сайт, используйте плагин. Это безопаснее для владельца сайта, потому что правила можно добавлять и проверять из админки WordPress.

Подходящие плагины для редиректов работают одинаково по сути: вы указываете старый URL и новый адрес, а плагин отправляет посетителя с кодом 301. После установки обычно достаточно открыть раздел редиректов, добавить источник и цель, сохранить правило и проверить переход.

Этот способ удобен, если редиректов немного или они нужны не постоянно. Но на очень больших сайтах с тысячами правил лучше переносить логику на сервер, чтобы не перегружать WordPress лишними проверками.

Что важно проверить в плагине

  • редирект именно с кодом 301, а не 302;
  • совпадает ли путь URL, включая слэш в конце, если он важен для вашего сайта;
  • нет ли цепочки из нескольких переходов;
  • не создаёт ли правило петлю, когда старый адрес ведёт сам на себя.

Если плагин позволяет, лучше настраивать редирект не только для одной страницы, а для группы похожих URL по маске. Но используйте маски осторожно: одно неаккуратное правило может отправить не туда сразу десятки адресов.

Редирект через .htaccess на Apache

Если сайт работает на Apache и у вас есть доступ к корню сайта, редирект можно прописать в .htaccess. Это быстрый и надёжный способ, потому что правило отрабатывает до загрузки WordPress.

Перед изменением файла сделайте резервную копию. Ошибка в .htaccess может привести к 500 Internal Server Error и временно отключить сайт.

Для одного адреса правило выглядит так:

Redirect 301 /staryj-adres/ https://example.com/novyj-adres/

Если нужно перенаправить конкретную страницу на другой URL, этого обычно достаточно. Первый путь указывается относительно корня сайта, второй — полный новый адрес.

Если нужен более гибкий вариант, используют модуль mod_rewrite. Например, для переноса одной страницы:

RewriteEngine On
RewriteRule ^staryj-adres/?$ https://example.com/novyj-adres/ [R=301,L]

Такой вариант полезен, когда нужно точнее контролировать совпадение адреса. Но если вы не уверены в синтаксисе, лучше не усложнять и использовать простое правило Redirect 301.

Редирект через PHP в WordPress

Иногда редирект удобнее добавить в код, если вы уже работаете с темой или небольшим кастомным плагином. Для этого используют функцию wp_redirect() и обязательно завершают выполнение скрипта через exit;.

Пример для перенаправления одной страницы:

add_action('template_redirect', function () {
    if (is_page('staryj-adres')) {
        wp_redirect('https://example.com/novyj-adres/', 301);
        exit;
    }
});

Этот способ подходит, когда нужно завязаться на условия WordPress: тип записи, слаг, категорию или другой контекст. Но у него есть минус: WordPress уже должен загрузиться, поэтому для массовых редиректов он менее эффективен, чем серверное правило.

Не вставляйте такой код в functions.php без понимания, как вы будете его поддерживать. Если тема сменится, правило может исчезнуть. Для постоянной логики лучше вынести редиректы в отдельный мини-плагин.

Какой способ выбрать

СитуацияЛучший вариантПочему
Несколько редиректов, нужен быстрый запускПлагинПроще добавить и проверить без доступа к серверу
Сайт на Apache, есть доступ к .htaccess.htaccessРедирект работает до загрузки WordPress
Нужна логика по условиям WordPressPHP-кодМожно привязать к слагу, типу записи и другим условиям
Много правил и высокая нагрузкаСерверная настройкаМеньше лишней нагрузки на WordPress

Если у вас обычный сайт на WordPress без сложной инфраструктуры, начните с плагина. Когда редиректов станет много или появится необходимость в более строгом контроле, перенесите правила на сервер.

Как не потерять трафик и не сломать SEO

Самая частая ошибка — редиректить всё на главную страницу. Для поисковика это слабый сигнал: старый материал не имеет прямого аналога, а пользователь попадает на нерелевантную страницу. Лучше вести на максимально близкий по смыслу новый URL.

Ещё одна проблема — цепочки редиректов. Например, старый адрес ведёт на промежуточный, а тот — на конечный. Для пользователя это лишняя задержка, а для поисковых систем — лишний шум. Правильная схема выглядит так: старый URL → новый URL, без промежуточных шагов.

Если вы меняете структуру сайта массово, сначала составьте список старых и новых адресов. Это можно сделать в таблице, чтобы не потерять соответствия. После этого настройте редиректы пакетно и проверьте самые важные страницы: те, что уже получали трафик, ссылки или заявки.

Как проверить, что 301 работает

После настройки откройте старый адрес в браузере и убедитесь, что он автоматически ведёт на новый. Но визуальной проверки недостаточно: важно увидеть именно код ответа 301.

Проверить можно несколькими способами:

  • через инструменты разработчика в браузере, вкладка Network;
  • через онлайн-проверку HTTP-статуса;
  • через команду curl, если вам удобно работать из терминала.

Пример проверки через curl:

curl -I https://example.com/staryj-adres/

В ответе должен быть статус 301 Moved Permanently, а в заголовке Location — новый адрес. Если видите 302, редирект временный и для постоянного переноса он не подходит. Если видите 200, значит перенаправления нет вовсе.

Что делать после настройки

Когда редирект работает, обновите внутренние ссылки на сайте, чтобы не гонять пользователей и роботов по старым адресам. Если старый URL был в меню, блоках, кнопках или в статьях, замените его на новый вручную. Это уменьшит количество лишних переходов и ускорит обход сайта.

Если страница была удалена окончательно и замены нет, не спешите ставить редирект на случайную похожую страницу. В таких случаях лучше оценить, есть ли смысл в новом адресе вообще. Иногда корректнее оставить 404 или отдать 410, чем искусственно отправлять человека не туда.

Для типовой задачи схема простая: выберите способ настройки, добавьте правило 301, проверьте код ответа и убедитесь, что старые ссылки ведут на релевантную новую страницу. Этого достаточно, чтобы не терять посетителей и не ломать накопленные SEO-сигналы при смене URL или переезде сайта.

Как использовать WPCommunity для создания социальной сети на WordPress
03.10.2026
Как закрыть сайт WordPress от индексации через robots.txt и meta robots
27.10.2026
Как найти и удалить битые ссылки в WordPress
19.10.2026
Как настроить 301 редирект в WordPress
22.10.2026
Как отключить комментарии для отдельных типов записей в WordPress
01.10.2026