Как избежать ошибок при миграции WooCommerce на новый домен

Диагностика проблем при миграции WooCommerce

Миграция WooCommerce на новый домен — частая задача, которая часто сопровождается ошибками: потеря ссылок на изображения, нарушение работы AJAX в корзине, проблемы с SSL, некорректные URL в заказах и письмах. Чтобы выявить проблемы, проверьте следующие моменты:

  • Работают ли страницы товаров и корзины без ошибок;
  • Отображаются ли изображения товаров корректно;
  • Корректно ли отправляются письма с правильными ссылками;
  • Работают ли AJAX-запросы (добавление товара в корзину без перезагрузки);
  • Все ли ссылки в базе данных обновлены под новый домен.

Как проверить работу AJAX в корзине

Откройте консоль браузера (F12) и перейдите на страницу товара. Попробуйте добавить товар в корзину — если в консоли возникают ошибки JS или запросы на старый домен, значит AJAX не работает корректно.

Пошаговое решение проблем миграции WooCommerce

1. Резервное копирование и подготовка

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

2. Поиск и замена URL в базе данных

Для корректной работы нужно заменить все упоминания старого домена новым внутри базы данных. Используйте WP-CLI или плагин Better Search Replace.

wp search-replace 'https://old-domain.com' 'https://new-domain.com' --skip-columns=guid

Важно: не менять поле guid, чтобы не нарушить RSS и внутренние ссылки.

3. Обновление настроек WooCommerce

Проверьте в WooCommerce > Настройки > Общие разделы:

  • URL магазина;
  • URL страницы корзины, оформления заказа и аккаунта;
  • SSL — убедитесь, что сертификат установлен и активен.

4. Очистка кеша и перегенерация ссылок

Очищайте кеш плагинов (например, WP Rocket, W3 Total Cache) и браузера. Перейдите в Настройки > Постоянные ссылки и нажмите «Сохранить», чтобы перегенерировать правила URL.

5. Проверка и исправление ссылок в письмах

WooCommerce иногда кэширует URL в шаблонах email. Очистите временные файлы и, если нужно, перегенерируйте шаблоны или проверьте, нет ли жестко прописанных ссылок в кастомных шаблонах.

6. Проверка работы AJAX корзины

Если добавление в корзину не работает, проверьте, что URL для AJAX-запросов обновлен:

add_filter('woocommerce_ajax_url', function() {
    return admin_url('admin-ajax.php');
});

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

Проверка результата после миграции

После выполнения всех шагов проверьте:

  • Работают ли все страницы магазина;
  • Корректно ли отображаются изображения;
  • Добавляется ли товар в корзину без перезагрузки;
  • Письма содержат правильные ссылки;
  • Отсутствуют ошибки в консоли браузера и логах сервера.

Частые ошибки и как их исправить

Ошибка 1: Изображения не отображаются или ведут на старый домен

Причина — неполная замена URL в базе данных. Проверьте таблицу wp_posts, поле post_content и wp_postmeta. Используйте WP-CLI с сериализацией данных или плагин Better Search Replace.

Ошибка 2: AJAX корзина не работает

Проверьте правильность URL для AJAX-запросов и отсутствие блокировок на сервере (например, ModSecurity). Убедитесь, что в functions.php нет переопределений, которые ломают AJAX.

Ошибка 3: Письма ссылаются на старый домен

Проверьте шаблоны email и настройки WooCommerce. Иногда помогает удаление и повторное сохранение настроек email.

Практические советы по безопасности и производительности

  • Перед миграцией отключите все неактивные плагины, чтобы избежать конфликтов.
  • Используйте SSL на новом домене — это критично для WooCommerce.
  • Оптимизируйте базу данных после миграции, удалив транзиенты и ревизии с помощью плагина Clearfy Pro (подробнее).
  • Настройте правильные права доступа на файлы и папки — обычно 644 для файлов и 755 для папок.
  • Проверьте, что на сервере включены необходимые PHP-модули, особенно curl, mbstring и json.

Сравнение способов замены URL в базе данных

МетодПреимуществаНедостатки
WP-CLI search-replaceБыстро, поддержка сериализованных данных, можно автоматизироватьТребует доступа к хостингу по SSH
Плагин Better Search ReplaceУдобный интерфейс, подходит для новичковМожет не сработать с большими базами, требует осторожности
Ручная правка SQLГибкостьВысокий риск повреждения данных, не учитывает сериализацию
Создать Custom Post Type в WordPress: пошаговое руководство
25.11.2025
Как сделать защиту от bruteforce в WordPress с помощью плагинов и кода
25.03.2026
Как автоматизировать просмотр и редактирование записей в WordPress с помощью кастомных функций
15.12.2025
Автоматический отчет по ошибкам WordPress с применением логов и уведомлений
30.03.2026
Как добавить автоматическое обновление трансляции видео в WordPress
21.01.2026