Как избежать проблем с бесконечным переадресом в WordPress

Проблема бесконечной переадресации (redirect loop) — одна из самых распространённых и одновременно запутанных ошибок в WordPress. Она проявляется, когда браузер постоянно перенаправляется с одного URL на другой без возможности загрузить страницу. В итоге пользователь видит ошибку типа «Too many redirects» или «ERR_TOO_MANY_REDIRECTS».

Почему возникает бесконечный редирект в WordPress

Причин для бесконечного переадреса могут быть несколько. Среди них — неправильные настройки URL сайта, конфликты плагинов или темы, ошибки в файле .htaccess, некорректные правила в файлах конфигурации сервера или некорректные редиректы в коде.

Чаще всего бесконечный редирект возникает из-за:

  • Неправильно указанных адресов WordPress Address (URL) и Site Address (URL) в настройках;
  • Конфликтов между плагинами, которые управляют редиректами или кэшированием;
  • Ошибок в правилах перезаписи в файле .htaccess;
  • Неверного использования функций редиректа в коде темы или плагинов.

Как проверить и исправить URL сайта в базе данных WordPress

Если вы не можете зайти в админ-панель из-за редиректа, проверьте правильность URL напрямую в базе данных. Для этого с помощью phpMyAdmin или другого инструмента выполните запрос:

SELECT option_name, option_value FROM wp_options WHERE option_name IN ('siteurl','home');

Если значения отличаются или указаны с ошибками (например, http вместо https или неправильный поддомен), исправьте их:

UPDATE wp_options SET option_value = 'https://wpma.ru' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://wpma.ru' WHERE option_name = 'home';

После исправления проблема может решиться, если дело было в URL.

Проверка файла .htaccess на ошибки в правилах редиректа

В WordPress стандартный файл .htaccess для ЧПУ выглядит так:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

Если в файле есть дополнительные правила редиректа, они могут конфликтовать с основными. Временно переименуйте .htaccess в .htaccess_backup и проверьте, исчезла ли ошибка. Если да — проблема в правилах, их нужно отредактировать.

Диагностика конфликтов плагинов и темы

Для поиска плагина, вызывающего бесконечный редирект, отключите все плагины через FTP, переименовав папку wp-content/plugins в plugins_off. Если проблема исчезла, включайте плагины по одному, чтобы найти виновника.

Если после отключения плагинов ошибка осталась, переключитесь на стандартную тему (например, Twenty Twenty-Three), переименовав текущую тему в themes_off. Если и это решит проблему, причина в теме.

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

Рекомендуем обратить внимание на плагин Clearfy Pro, который помогает оптимизировать работу сайта, в том числе управлять редиректами и отключать лишние функции, способные вызвать конфликты.

Также полезен плагин Redirection, позволяющий наглядно отследить цепочки редиректов и выявить петли.

Пример кода для безопасного редиректа в теме WPMA

Неправильное использование функции wp_redirect может привести к бесконечным редиректам. Вот пример правильной реализации с префиксом wpma_ для предотвращения ошибок:

function wpma_safe_redirect($url) {
    if (!headers_sent()) {
        wp_redirect($url, 301);
        exit;
    } else {
        echo '<script>window.location.href = "' . esc_url($url) . '";</script>';
        exit;
    }
}

Вызывайте функцию только после проверки условий, чтобы не создавать цикл:

if (!is_page('target-page')) {
    wpma_safe_redirect(home_url('/target-page'));
}

Советы по предотвращению бесконечных редиректов

  • Всегда делайте резервные копии перед изменением настроек и файлов;
  • Используйте консоль разработчика в браузере или инструменты типа httpstatus.io для анализа цепочек редиректов;
  • Избегайте одновременного использования нескольких плагинов для редиректов и кэширования, чтобы не создавать конфликты;
  • Проверяйте настройки SSL-сертификатов и сайт должен быть настроен на единый протокол (http или https);
  • Используйте плагины с понятной документацией и поддержкой.

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

Как создать автоматический запрос на данные в WordPress с помощью WP_Query и AJAX
02.03.2026
Как удалить или скрыть категории из публикаций WordPress
02.02.2026
Удаление неиспользуемых метаданных в WordPress: оптимизация базы данных
02.11.2025
Создать динамические формы в WordPress на AJAX без плагинов
04.01.2026
WooCommerce: как решить проблему с повторной оплатой одного заказа
30.04.2026