Загальновизнано, що розробники повинні перевіряти оновлення через веб-сайт, перш ніж випускати їх на живий сервер, однак, як тільки оновлення розробки потребують модифікацій у Wordpress DB, все ускладнюється, оскільки користувачі на веб-сайті в реальному часі також оновлюватимуть БД.
Єдиний (заплутаний) потік, який я можу собі уявити, такий:
- Тест на локальному сервері (WAMP, XAMP тощо)
- Після готовності до розгортання переведіть веб-сайт в режим обслуговування
- Резервне копіювання живого веб-сайту (копіювач, sqldump тощо)
- Створіть клон заблокованого живого сайту до інсценізаційного сайту
- Завантажте модифікації з місцевого середовища на інсценізаційний сайт
- Перевірте місце постановки
- Натисніть на інсценівку, щоб жити.
- Вийміть режим обслуговування
Недоліки потоку вище:
- час простоїв для користувачів може бути довшим, ніж очікувалося, поки розробник ретельно перевіряє оновлення на веб-сайті;
- може знадобитися вручну керувати модифікаціями: наприклад, макети веб-сторінок siteorigin зберігаються у db, тож як тільки макет буде змінено, його потрібно імпортувати вручну на місце постановки; у цьому випадку може бути адекватним просто випустити та імпортувати сторінки на веб-сайт, а якщо працює, імпортувати їх у реальному веб-сайті
Цікаво, чи існує кращий і автоматизований спосіб досягти цього.
Як ти гадаєш?
EDIT, за запитом, деякі рішення були запропоновані в минулому, але жодне не пропонує остаточного рішення:
- 9/2010 - Синхронізація бази даних між розробкою / постановкою та виробництвом
- 12/2011 - Розгортання оновлених чи нових плагінів, що змінюють таблицю wp_options
- 9/2014 - Як завантажувати локальні зміни на живий сервер без зміни нових повідомлень / сторінок?
- 1/2015 - Як підтримувати блоги сайту wordpress у виробництві та постановці?