Intereting Posts
Разрешить пользователю изменять домашнюю страницу Как вызывать сообщения под определенной категорией на статической странице? wp_nav_menu не выделяет текущую категорию при просмотре одной записи Возможности персонализированного типа сообщений: проблемы с map_meta_cap Таблица сравнения цен на основе пользовательского типа сообщений? Как добавить новую функцию post в текстовый виджет, который я создал для практики? Как удалить собственный архив типа сообщения время загрузки пользовательского запроса wp-запроса проверить метабокс на основе выбранной категории Как перенаправить действие = зарегистрировать ссылку на странице с потерянным паролем на другую ссылку? Используйте одну и ту же структуру константной ссылки на основе даты для всех типов сообщений Хранение уникальных данных в базе данных Постоянная ссылка для авторов цитат Ошибка в клиентской зоне WHMCS через WHMCS-Bridge Если опубликовано после даты

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

У меня есть два сайта, использующих 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.