SDStreltsov Digital
WordPress

Как перенести WordPress-сайт со staging на production без потери SEO и настроек

Чек-лист безопасного переноса WordPress со staging на production: backup, URL, canonical, redirects, лицензия, API-ключи, cron, email, PWA и финальная проверка.

Перенос WordPress со staging на production — это больше, чем копирование файлов. После смены домена могут остаться абсолютные URL, noindex, старые canonical, тестовые API-ключи, неверные cron-задачи и лицензия, привязанная к staging. Хорошая миграция заканчивается не загрузкой базы, а системной проверкой нового сайта.

Безопасный принцип: сначала делайте полный backup/clone, затем переносите настройки и домен, после этого активируйте production-интеграции и только в конце открывайте индексацию.

Что такое staging

Staging — отдельная копия сайта для разработки и проверки обновлений. Она может находиться на поддомене, временном домене или закрытом окружении хостинга.

Главная ценность staging — возможность менять тему, плагины и структуру без риска для публичного проекта. Но staging не должен случайно стать индексируемой копией основного сайта.

Перед переносом сделайте полный backup

Экспорт настроек темы не заменяет резервную копию WordPress. Для полного клона нужны база данных, wp-content, медиатека и конфигурация окружения.

Лучше иметь точку восстановления и на staging, и на production перед заменой существующего сайта.

Проверьте, что именно переносите

Есть два разных сценария:

  • полный clone — переносится вся база и файлы;
  • configuration migration — production уже содержит контент, а вы переносите настройки темы, меню и отдельные параметры.

Смешивание сценариев приводит к неожиданным перезаписям. Для BetCraft Migration Center предназначен прежде всего для управляемого переноса конфигурации поверх корректно клонированного WordPress.

Абсолютные URL

После смены домена старый staging URL может остаться в контенте, меню, виджетах, affiliate-полях и настройках. Простая строковая замена всей базы опасна из-за сериализованных данных и служебных значений.

Безопаснее ограничить замену известными областями и сначала выполнить preview: сколько совпадений найдено и где именно.

Не заменяйте внешние affiliate-ссылки без причины

Domain Replace должен отличать собственный staging-домен от внешнего URL партнёрской программы. Массовая замена внутри каждой ссылки без фильтра способна испортить отслеживание.

После миграции отдельно проверьте основные CTA и несколько redirect URL вручную.

Canonical, robots и sitemap

До запуска убедитесь, что production больше не содержит canonical на staging. Проверьте robots.txt, настройки «Видимость для поисковых систем» и sitemap.

Если staging был закрыт через noindex, эта настройка не должна случайно остаться на публичном домене. И наоборот: тестовую копию после запуска нельзя оставлять открытой для индексации.

301 со старого публичного домена

Если миграция одновременно меняет уже индексируемый основной домен, потребуется отдельный план 301-редиректов URL-to-URL. Это не то же самое, что замена staging-домена в базе.

Для смены публичной структуры полезен отдельный Redirect Center. Он помогает контролировать 404 и старые адреса после запуска.

Лицензия

Коммерческая тема может учитывать активированный домен. Поэтому staging и production нужно переносить по правилам конкретной лицензии: при необходимости деактивировать старую активацию и активировать ключ на конечном домене.

Сам migration bundle не должен содержать секретный site token или автоматически переносить лицензионные данные между сайтами.

API-ключи и секреты

Sports API, SMTP, аналитика и другие интеграции могут использовать разные ключи на staging и production. Такие секреты лучше хранить отдельно от переносимого JSON-конфига.

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

WP-Cron и фоновые задачи

На staging cron часто отключают или ограничивают, чтобы тестовая копия не отправляла письма и не импортировала реальные данные. На production нужно вернуть нужный режим.

Проверьте Sports API, Feed Manager, напоминания, очистку логов, уведомления и другие фоновые процессы.

Email

Тестовый сайт может использовать mail-catcher или полностью блокировать исходящие письма. После запуска отправьте реальное тестовое сообщение и проверьте SMTP, From, SPF/DKIM на стороне почтовой инфраструктуры, если они используются.

PWA, Service Worker и кэш

Service Worker способен кэшировать старые assets и URL. После смены домена или крупного обновления очистите серверный/CDN-кэш и проверьте PWA в чистом браузере.

Не ориентируйтесь только на сессию администратора: у неё часть кэша может вести себя иначе.

Community и пользовательские данные

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

На активном проекте конфигурационные изменения лучше переносить отдельно от пользовательского контента.

Финальная проверка после миграции

  • открывается главная и ключевые коммерческие страницы;
  • нет хвостов старого staging URL;
  • лицензия активна на production;
  • меню и Homepage Builder работают;
  • affiliate-кнопки ведут на правильные URL;
  • REST API отвечает;
  • WP-Cron работает;
  • email отправляется;
  • Consent Center и аналитика настроены;
  • PWA и Community доступны;
  • нет новых массовых 404;
  • индексация включена только там, где нужна.
BackupЕсть точка восстановления до любых изменений.
URLsСтарый staging-домен не остался в поддерживаемых данных.
SEOCanonical, robots и sitemap соответствуют production.
SecretsAPI-ключи и лицензия настраиваются отдельно.
Cron / EmailФоновые задачи и письма проверены на конечном домене.
ReportПосле переноса выполнена повторяемая системная диагностика.

Migration Center в BetCraft

В BetCraft Migration Center создаёт переносимый bundle настроек, умеет восстановить поддерживаемые меню/виджеты, выполнить безопасный preview Domain Replace и сформировать Final Migration Report.

Дополнительно можно сгенерировать child theme для кастомных CSS/PHP-изменений, чтобы они не зависели от обновления родительской темы. Подробная последовательность описана в документации.

Частые вопросы

Migration bundle заменяет полный backup?

Нет. Он переносит поддерживаемую конфигурацию BetCraft. База, медиатека, пользователи и контент требуют обычного backup/clone-механизма.

Можно ли сделать search/replace по всей БД?

Можно специальными инструментами, которые корректно работают с сериализованными данными, но слепая строковая замена SQL опасна. Для типового переноса лучше менять только нужные области и проверять результат.

Когда открывать индексацию?

После проверки production URL, canonical, sitemap, ключевых страниц, редиректов и отсутствия критических ошибок. До этого сайт лучше считать ещё не запущенным.

ПОДЕЛИТЬСЯ Статья была полезна? Отправьте её коллегам
ВКонтакте Telegram
БОЛЬШЕ МАТЕРИАЛОВ

Продолжайте разбираться в WordPress и разработке сайтов

Все статьи