Как настроить автоматический редирект в WordPress при изменении URL

В процессе работы с WordPress часто возникает необходимость изменять URL страниц или записей. Это может быть связано с SEO-оптимизацией, реорганизацией структуры сайта, изменением названий разделов и другими задачами. Однако изменение URL без правильной настройки может привести к появлению ошибок 404 и потере трафика.

В этой статье подробно рассмотрим, как настроить автоматические редиректы в WordPress при изменении URL, чтобы сохранить позиции в поисковой выдаче и улучшить пользовательский опыт. Разберём как готовые плагины, так и кастомные решения с примерами кода.

Почему важно настраивать редиректы при изменении URL в WordPress

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

  • Пользователи видят страницу с ошибкой 404, что ухудшает впечатление о сайте.
  • Потеря SEO-рейтинга, так как поисковые системы не могут найти контент на новом адресе.
  • Снижение трафика и потенциальных конверсий.

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

Использование плагинов для автоматического редиректа при смене URL

Самый простой способ — использовать готовые плагины, которые автоматически создают редиректы при изменении постоянных ссылок (Permalinks).

Плагин Redirection

Redirection — один из самых популярных и удобных плагинов для управления редиректами. Он автоматически фиксирует изменение URL и создаёт 301 редиректы.

Как настроить:

  1. Установите и активируйте плагин через админку WordPress.
  2. Перейдите в раздел Инструменты → Redirection.
  3. Включите мониторинг изменений URL.
  4. Плагин будет автоматически создавать редиректы при изменении ссылок на записи и страницы.

Преимущества: не требует знаний кода, ведёт логи редиректов, поддерживает регулярные выражения и группы правил.

Плагин Simple 301 Redirects

Если вам нужны более простые и быстрые настройки, можно использовать Simple 301 Redirects. Он позволяет вручную добавлять пары старый URL → новый URL. Эта функция полезна, если изменений немного или вы хотите контролировать каждый редирект.

Создание автоматического редиректа при изменении URL с помощью кода

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

Пример реализации с использованием хука post_updated

Хук post_updated срабатывает при обновлении записи. Мы можем проверить, изменился ли слаг (slug) у записи, и если да — сохранить старый URL и настроить редирект.

function wpcodex_redirect_on_slug_change($post_ID, $post_after, $post_before) {
    if ($post_after->post_type !== 'post' && $post_after->post_type !== 'page') {
        return;
    }

    $old_slug = $post_before->post_name;
    $new_slug = $post_after->post_name;

    if ($old_slug !== $new_slug) {
        $old_url = home_url('/' . $old_slug . '/');
        $new_url = home_url('/' . $new_slug . '/');

        // Сохраняем редирект в базе (например, в опции)
        $redirects = get_option('wpcodex_slug_redirects', []);
        $redirects[$old_slug] = $new_url;
        update_option('wpcodex_slug_redirects', $redirects);
    }
}
add_action('post_updated', 'wpcodex_redirect_on_slug_change', 10, 3);

Затем добавим обработчик, который будет проверять текущий URL и делать редирект, если найден старый слаг:

function wpcodex_handle_slug_redirect() {
    if (!is_singular()) {
        return;
    }

    global $post;
    $requested_slug = get_query_var('name');
    $redirects = get_option('wpcodex_slug_redirects', []);

    if (isset($redirects[$requested_slug])) {
        wp_redirect($redirects[$requested_slug], 301);
        exit;
    }
}
add_action('template_redirect', 'wpcodex_handle_slug_redirect');

Таким образом, когда пользователь попадает на старый URL, его автоматически перенаправляет на новый.

Минусы такого подхода — необходимость хранить и очищать список редиректов, а также ограничение на типы постов.

Особенности и советы по работе с редиректами в WordPress

Как правильно выбрать тип редиректа

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

Управление большим количеством редиректов

Если на сайте много изменений URL, лучше использовать плагин с базой и интерфейсом управления, например Redirection. Это поможет избежать конфликтов и упростит контроль.

Интеграция с SEO-плагинами

Некоторые SEO-плагины, например, Clearfy Pro, содержат функции управления редиректами. Их можно использовать в комплексе для оптимизации сайта.

Заключение

Автоматические редиректы при изменении URL — важный инструмент для поддержания корректной работы сайта на WordPress и сохранения SEO-позиций. Наиболее удобный и надёжный способ — использовать плагин Redirection. Если вы предпочитаете код, приведённый пример поможет реализовать базовую логику перенаправления.

Воспользуйтесь готовыми решениями или кастомным кодом, чтобы избежать проблем с 404 ошибками и не потерять трафик после смены URL.

Как удалить и заблокировать IP-адреса в WordPress
11.02.2026
WooCommerce: как автоматически удалять записи по увязанным товарам после удаления товара
30.05.2026
Как настроить автоматический редирект в WordPress при изменении URL
18.02.2026
Автоматический экспорт постов в XML в WordPress: практическое руководство
31.12.2025
WordPress: как создать динамическое меню с подменю через код
08.01.2026