Широко признано, что разработчики должны тестировать обновления через промежуточный сайт, прежде чем выпускать их на действующий сервер, однако, как только обновления разработки потребуют изменений в БД Wordpress, все усложняется, так как пользователи на живом сайте тоже будут обновлять БД.
Единственный (запутанный) поток, который я могу себе представить, заключается в следующем:
- Тест на локальном сервере (WAMP, XAMP и т. Д.)
- Когда все будет готово к развертыванию, переведите работающий сайт в режим обслуживания.
- Резервное копирование живого сайта (Duplicator, sqldump и т. Д.)
- Создайте клон заблокированного живого сайта на промежуточный сайт
- Загрузка изменений из локальной среды на промежуточный сайт
- Проверьте место проведения
- Нажмите постановочный сайт, чтобы жить.
- Удалить режим обслуживания
Недостатки потока выше:
- время простоя может быть больше ожидаемого для пользователей, пока разработчик тщательно тестирует обновления на промежуточном сайте;
- может потребоваться ручное управление изменениями: например, макеты компоновщика страниц siteorigin хранятся в БД, поэтому после изменения макета его необходимо импортировать вручную на промежуточный сайт; в этом случае может быть достаточно просто перетащить и импортировать страницы на промежуточный сайт, а в случае работы импортировать их на действующий сайт.
Интересно, есть ли лучший и более автоматизированный способ добиться этого?
Как вы думаете?
РЕДАКТИРОВАТЬ, в соответствии с просьбой, некоторые решения были предложены в прошлом, но ни одно не предлагает окончательного решения:
- 9/2010 - Синхронизация базы данных между dev / staging и production
- 12/2011 - Развертывание обновленных или новых плагинов, которые изменяют таблицу wp_options
- 9/2014 - Как загрузить локальные изменения на действующий сервер без переопределения новых сообщений / страниц?
- 1/2015 - Как поддерживать блоги WordPress сайта в производстве и постановке?