WordPress
Использование Staging: отправка в Production и загрузка из Production
Once a staging copy exists, two operations keep it useful: pushing your tested changes up to the live site, and resetting staging back to a fresh copy of production. This guide covers both…
Когда копия для промежуточной среды существует, две операции поддерживают её полезность: отправка протестированных изменений на живой сайт и сброс промежуточной среды к свежей копии production. Это руководство подробно охватывает обе операции, подтверждения, которые защищают ваш живой сайт, и случаи, когда отправка базы данных уничтожила бы данные.
Если вы ещё не создали промежуточную среду, начните с Использование промежуточных сред. Эта статья начинается с момента, когда промежуточная среда уже существует.
Две направления
| Операция | Что она перезаписывает | Используйте её, когда |
|---|---|---|
| Отправка на Production | Ваш живой сайт | Изменения в промежуточной среде протестированы и готовы к публикации |
| Сброс из Production | Ваша промежуточная среда | Вам нужна чистая копия текущего живого сайта для работы |
Обе операции находятся на одном экране: Websites, затем ваш сайт, затем Environments, затем Staging.

Карточка в верхней части этого экрана показывает домен вашей промежуточной среды, её статус, как давно она была в последний раз синхронизирована из production, и когда она была в последний раз отправлена. WP Admin прямо входит в панель управления промежуточной среды, а Visit site открывает фронтенд промежуточной среды.
Копия промежуточной среды, которая не была синхронизирована неделю или дольше, отмечена жёлтым на этой карточке. Старая промежуточная среда хуже, чем её отсутствие: вы заканчиваете тестированием на сайте, который больше не похож на живой. Сбросьте перед началом новой работы, а не после.
Отправка промежуточной среды на Production
Это заменяет часть или весь ваш живой сайт тем, что находится в промежуточной среде.
- Откройте Environments, затем Staging.
- Прокрутите до Push Staging to Production.
- Выберите, что отправить, с помощью флажков: Files, Database или оба.
- Если вы отметили Database, оставьте Rewrite URLs отмеченным. Это выполняет поиск и замену по всей таблице, чтобы имя хоста промежуточной среды было заменено на production как часть отправки.
- Отметьте I understand this modifies my live production site.
- Введите ваш домен production в поле подтверждения точно так, как показано.
- Нажмите Push to Production.
Кнопка остаётся неактивной, пока оба флажка не отмечены и домен не совпадает, поэтому неправильно рассчитанный клик не может начать отправку.
Отправка перезаписывает, она не объединяет. Всё, что изменилось на production с момента вашего последнего сброса, заменяется тем, что находится в промежуточной среде. Это включает новые посты, новые учётные записи пользователей, новые записи формы и новые заказы.
Полная резервная копия production автоматически создаётся перед тем, как что-либо будет записано, и если отправка прерывается на полпути, production откатывается к этой резервной копии. Небольшие сайты обычно завершаются менее чем за минуту; большая база данных или медиатека размером в несколько гигабайт занимает больше времени.
Выбор файлов, базы данных или обоих
Это решение имеет наибольшее значение, и ответ обычно не "оба".
Только файлы. Безопасный выбор по умолчанию для сайта, который что-либо собирает от посетителей. Редактирование тем, обновления плагинов, изменения шаблонов и пользовательский код находятся в файлах. Отправка только файлов оставляет все посты, комментарии, заказы и пользователей на production нетронутыми.
Только база данных. Для изменений содержимого или параметров, сделанных в промежуточной среде, на сайте, где никто не редактирует production напрямую. На практике редко.
Оба. Правильно для переделки или перестроения, где промежуточная среда является новым сайтом, а production полностью заменяется. Объявите об этом, сделайте это в нерабочее время и убедитесь, что у вас есть текущая резервная копия.
Отправка базы данных на живой магазин удаляет заказы. WooCommerce хранит заказы, клиентов, подписки, купоны и уровни товара в базе данных, поэтому каждый заказ, размещённый с момента вашего последнего сброса из production, исчезает сразу после завершения отправки. Частичного восстановления нет. В магазине отправляйте только файлы и вносите изменения на уровне базы данных непосредственно на production. См. Настройка WooCommerce.
Та же ловушка применяется, менее драматично, к любому сайту с комментариями, отправками форм, регистрацией участников или списком рассылки, хранящимся в WordPress.
Сброс промежуточной среды из Production
Это безопасное направление: оно перезаписывает промежуточную среду текущим живым сайтом и никогда не затрагивает production.
- Откройте Environments, затем Staging.
- Найдите Reset from Production.
- Отметьте Files, Database или оба.
- Нажмите Reset from Production.
Делайте это всякий раз, когда:
- Production продвинулся вперёд с новыми постами, новыми заказами или редактированием содержимого.
- Вы начинаете новую работу и хотите реалистичную основу.
- Промежуточная среда настолько сильно отстала, что результат теста там ничего не значит.
Всё, что находится в промежуточной среде и не было отправлено, теряется. Если на промежуточной среде есть работа, которая вам всё ещё нужна, отправьте её в первую очередь или скопируйте изменённые файлы через Files, затем File Manager перед сбросом.
Как работает переписывание URL
WordPress хранит свой собственный адрес в базе данных в строках siteurl и home таблицы параметров, а абсолютные URL также появляются в содержимом постов, значениях мета, параметрах виджетов и параметрах темы.
Ваш сайт промежуточной среды работает в staging. с последующим вашим доменом, поэтому каждое из этих значений указывает на имя хоста промежуточной среды во время работы. Rewrite URLs при отправке выполняет правильный поиск и замену по всем таблицам, правильно обрабатывая параметры сериализованного плагина и заменяет имя хоста промежуточной среды на production.
Оставьте его отмеченным, если у вас нет конкретной причины не делать этого. Если вы отправляете только файлы или остаток URL промежуточной среды остаётся, исправьте это с помощью Запуск поиска и замены.
Рабочий процесс, который выдерживает испытание
- Сбросьте из production, чтобы промежуточная среда соответствовала живому сайту.
- Создайте резервную копию production перед началом, чтобы у вас была точка восстановления, независимая от отправки: Создание резервной копии.
- Выполните работу в промежуточной среде. Обновления плагинов и тем, новый код, изменения макета.
- Протестируйте в домене промежуточной среды. Загрузите изменённые страницы и те, которые вы не изменяли. В магазине запустите тестовый заказ от начала до конца.
- Отправьте только файлы, если вы не решили сознательно, что база данных также должна быть отправлена.
- Проверьте production немедленно. Главная страница, глубокая страница, оформление и панель управления администратора.
- Сбросьте промежуточную среду из production снова как только вы будете довольны, чтобы следующий раунд начался заново.
Промежуточная среда управляется полностью с вашего сайта production. Она не отображается как отдельная запись в списке Websites, поэтому каждый элемент управления для неё, включая удаление, находится на этой вкладке.
Удаление промежуточной среды
Карточка Delete Staging в нижней части того же экрана удаляет копию промежуточной среды. Production остаётся без изменений. Удаляйте её, когда проект завершён: промежуточная среда считается в сторону хранилища вашего плана, и устаревшая копия является скорее пассивом, чем активом.
Устранение неполадок
Кнопка "Push to Production" не активируется. Оба условия должны быть выполнены: галочка подтверждения отмечена и домен production введён точно, без https:// и без косой черты в конце.
Отправка завершилась, но сайт всё ещё показывает старое содержимое. Кеширование. Очистите из WordPress, затем Quick Actions, затем Flush Cache, очистите CDN из Performance, затем Kapsule CDN, и перезагрузите в приватном окне.
URL промежуточной среды показываются на живом сайте после отправки. База данных была отправлена без отмеченной Rewrite URLs. Запустите поиск и замену с имени хоста промежуточной среды на домен production: Запуск поиска и замены.
Я отправил базу данных и потерял заказы. Восстановите автоматическую резервную копию, созданную перед отправкой, сразу же, прежде чем на перезаписанную базу данных поступят новые заказы: Восстановление из резервной копии.
Промежуточная среда показывает ошибку после сброса. Плагин, который жёстко кодирует домен production, является обычной причиной. Войдите с помощью WP Admin на карточке промежуточной среды и деактивируйте плагины там, пока ошибка не исчезнет, затем исправьте или замените проблемный на production.