Диагностика проблем после смены домена в WooCommerce
При смене домена WooCommerce-магазина часто возникают ошибки: сломанные ссылки на товары, изображения, некорректная работа корзины и оформления заказа. Основные причины — устаревшие абсолютные URL в базе данных, кэшированные данные и настройки плагинов, которые «привязаны» к старому домену.
Часто встречаемые симптомы:
- Товары открываются по старым URL или ведут на 404 страницу.
- Изображения товаров не отображаются или ссылаются на старый домен.
- В корзине и на странице оформления заказа появляются ошибки или пустые данные.
- Проблемы с SSL-сертификатом и смешанным контентом.
- Проблемы с кэшированием и кукисами, из-за которых сайт не обновляет данные.
Пошаговое решение для корректного переноса WooCommerce на новый домен
1. Резервное копирование
Перед любыми изменениями сделайте полный бэкап базы данных и файлов сайта.
2. Обновление URL в базе данных
WooCommerce использует много абсолютных URL в метаданных товаров, настройках и пользовательских данных. Для массовой замены используйте WP-CLI или специализированные инструменты.
Пример команды через WP-CLI:
wp search-replace 'https://old-domain.com' 'https://new-domain.com' --skip-columns=guid --precise --all-tablesПояснение:
--skip-columns=guid— предотвращает замену в столбцеguid, что важно для корректной работы RSS и ссылок.--precise— более тщательный поиск и замена.--all-tables— поиск во всех таблицах, включая пользовательские WooCommerce таблицы.
3. Очистка кэша
Если используется кэширование (плагины, серверный кэш, CDN), полностью очистите кэш и отключите его временно для проверки.
4. Обновление настроек WooCommerce
Перейдите в WooCommerce > Настройки > Общие и проверьте URL магазина. При необходимости установите новый домен.
5. Сброс и обновление постоянных ссылок
В WordPress зайдите в Настройки > Постоянные ссылки и просто нажмите «Сохранить», чтобы обновить правила перезаписи.
6. Проверка SSL и смешанного контента
Обязательно проверьте, что сайт использует корректный SSL-сертификат для нового домена. Для устранения смешанного контента можно использовать плагин Clearfy или вручную заменить ссылки в базе.
7. Проверка куки и сессий WooCommerce
Очистите куки браузера и убедитесь, что сессии покупателей работают корректно (корзина сохраняется после обновления страниц).
Проверка результата после переноса
- Проверьте, что все товары открываются по новому домену без редиректов на старый.
- Изображения отображаются корректно, без ошибок загрузки.
- Добавьте товар в корзину, перейдите к оформлению заказа — процесс должен работать без ошибок.
- Проверьте страницу «Мой аккаунт» и историю заказов.
- Проверьте логи сервера на предмет ошибок после переноса.
Частые ошибки при переносе WooCommerce и как их исправить
- Не заменены все URL в базе данных. Используйте WP-CLI или скрипты Search Replace DB для замены по всему сайту, включая serialized данные.
- Забыли очистить кэш. Неочищенный кэш приводит к отображению старых данных.
- SSL-сертификат не установлен или не настроен. Проверьте сертификат и настройте HTTPS, иначе WooCommerce может выдавать ошибки.
- Корзина и сессии не работают. Проверьте настройки cookie и домена в файле
wp-config.phpи в настройках WooCommerce. - Постоянные ссылки не обновлены. Пересохраните настройки постоянных ссылок после смены домена.
Практические советы по безопасности и производительности при переносе WooCommerce
- Перед переносом отключите все кэш-плагины и CDN, чтобы исключить кэширование старых данных.
- Используйте WP-CLI для массовых операций — это быстрее и надежнее, чем плагины.
- Для больших сайтов с тысячами товаров используйте поиск и замену с поддержкой serialized данных (например, https://interconnectit.com/products/search-and-replace-for-wordpress-databases/).
- После переноса установите плагин безопасности (например, Clearfy Pro) для блокировки попыток доступа к старым URL или атакам на сессии.
- Регулярно создавайте резервные копии до и после переноса.
Сравнение вариантов замены URL в базе данных
| Метод | Плюсы | Минусы | Когда использовать |
|---|---|---|---|
| WP-CLI search-replace | Быстро, поддерживает serialized данные, полнофункционально | Требует доступа к серверу и консоли | Для опытных разработчиков и больших проектов |
| Плагин Search & Replace | Удобно через админку, не требует консоли | Риск повреждения serialized данных, медленнее | Маленькие сайты, если нет доступа к консоли |
| SQL-запросы вручную | Прямой контроль | Не поддерживает serialized данные, риск повреждения базы | Только для простых случаев |