Intereting Posts
Проблема с локальным WordPress в Google App Engine Включить пользовательские типы сообщений в виджет категорий Постоянная ссылка с под-подкатегорией и названием Динамическая домашняя страница в соответствии с ролью пользователя Добавить короткий код в поле__состояния () Как включить этот файл jQuery в wordpress? Paginate_links в настраиваемом шаблоне типа сообщения API настроек хранит сериализованные данные в базе данных («Правильный путь») Ограничить доступ пользователей к нескольким сайтам для не назначенных блогов увеличить per_page limit в rest api Пользовательская таксономия с пользовательскими типами сообщений Нет сообщений Почему я получаю ошибку Parse: синтаксическая ошибка, когда я использую 'wp_is_mobile'? Пользовательский параметр темы – Обновление Javascript (jQuery) с использованием `.load ('file.php')` – Неустранимая ошибка: вызов функции undefined Заменить эмблему admin bar Отображение короткого кода в нижнем колонтитуле

Объединение обновленного сайта-разработчика с живым сайтом при правильном выполнении заказов

У меня есть два сайта, использующих WordPress с WooCommerce, один из них LIVE (принимает заказы), а другой – в Development.

Один из них был обновлен с контентом и у него были удалены и прочитаны существующие продукты, а также другой контент.

Меня попросили объединить данные dev на живые, но не потеряв транзакционные данные или пользователей.

Обычно я бы сделал следующее:

  1. Поместить живой сайт в режим обслуживания
  2. Получите резервную копию mysqldump для сайта live и development
  3. Экспортируйте все данные wp с помощью инструмента экспорта на сайт DEV. ИСКЛЮЧИТЕ пользователей.
  4. Импортируйте данные в реальном времени.
  5. Загрузите медиа-каталог из dev в live (на сайте dev есть новые изображения)
  6. Проверяйте живое и возвращайтесь в производство, если все хорошо.

У меня есть проблемы:

  1. У меня нет phpmyadmin для использования в специализированной работе, связанной с SQL.
  2. Клиент удалил существующие продукты, связанные с транзакционными данными, а затем повторно добавил эти продукты (я не знаю причины, почему это было сделано, мне была дана эта задача без участия с самого начала)
  3. Из-за пункта 2 я думаю, что в итоге я получу транзакции / заказы на живые, указывающие на продукты, которых не существует.

Каков самый простой способ объединить изменения в dev в реальном времени, не теряя пользователей или заказывая связанные данные, а затем примирить любые потерянные транзакции.

Ниже приведен пример того, к чему я стремился:

Site A1 (Current site) Site A2 (Staging) Site A2 After Merging ================================================================= ID Name ID Name ID Name ================================================================= 1 Product A | 1 Product A | 1 Product A 2 Product B | | 2 Product B 3 Product C | 3 Product C | 3 Product C | 4 Product D | 4 Product D 

Solutions Collecting From Web of "Объединение обновленного сайта-разработчика с живым сайтом при правильном выполнении заказов"

С текущим состоянием базы данных разработки вам придется вручную повторно применить свои изменения как к живым, так и к предпочтительным условиям, которые были настроены для использования чего-то вроде Mergebot, я не вижу никакого чистого способа автоматизируя ваше развертывание в противном случае.

Почему Mergebot не может помочь определить текущее состояние базы данных:

Mergebot – отличное решение проблемы работы с сайтом-разработчиком, который является копией живого сайта с данными транзакций, такими как заказы WooCommerce, которые создаются во время работы над dev. Это одна из главных причин, по которой она была создана.

Однако Mergebot работает путем записи изменений на сайт dev и требует, чтобы сайт-разработчик был чистой копией живого сайта при начале записи. Обычно вы создаете копию живого сайта с чем-то вроде WP Migrate DB Pro (в комплекте с подпиской Mergebot), а затем начинаете запись, когда вы закончите развертывание, чтобы жить через Mergebot, который позаботится о слиянии и проведет вас через разрешение конфликта там, где это необходимо.

В приведенном выше сценарии база данных разработчиков уже значительно отличается от записи до начала записи, поэтому я не думаю, что Mergebot является решением, если только работа с разработчиком не может быть повторно применена к новой копии live. Удаление продуктов также является серьезной проблемой, они должны быть удалены из продажи, но оставлены нетронутыми, если они уже куплены клиентами.

Здесь есть лучшее описание Mergebot: https://deliciousbrains.com/database-merging-made-easy/

И если вы предпочитаете скринкасты, ознакомьтесь с этим сообщением: https://deliciousbrains.com/mergebot-in-beta/

Полное раскрытие: пока я не работаю непосредственно над Mergebot, я работаю над Delicious Brains, разработчиками Mergebot.