Intereting Posts
Почему не удалось проверить плагин NextGen? Исключить сообщения с определенными тегами в категории архив нагрузка больше не будет отображаться Как обрабатывать короткие коды через плагин Переместите ссылку «Меню» из «Внешний вид»> «Меню» на свою вкладку в левой колонке «Панель управления» Название WordPress как ключевые слова (теги) с исключенными стоп-словами Добавить функцию плагина WordPress для передачи данных изображения на другую страницу add_filter () не работает, если обратный вызов находится в другом файле в признаке использовать одну форму для ввода нескольких профилей Добавить видео на YouTube или Vimeo в качестве прикрепления к записи? Неустранимая ошибка: вызов неопределенного метода WP_Error :: get_item_quantity () wp_query должен сначала показывать листы Предотвращение снятия меток MathML при сохранении сообщения если в категории есть только одна должность, прямо открывайте Рекомендации для книг / ресурса для начала разработки WordPress 3 (плагины / темы)

Тип пользовательской публикации в отдельной таблице базы данных для синхронизации

У меня есть настраиваемый тип сообщений, который должен синхронизироваться между двумя разными сайтами, размещенными на разных серверах. Если какой-либо сайт редактирует, вставляет или удаляет, другая база данных также должна будет обновить свою базу данных для изменения. Проблема, которую я вижу, – это идентификаторы, которые будут смещены между двумя базами данных.

Поэтому я считаю, почему я не могу создать собственный тип сообщений, который будет размещаться в другой таблице базы данных, и просто синхронизировать одну таблицу между двумя установками?

Проблема, которую я вижу, – это учитывать конфликты, такие как URL. Страница slug «hello-world» и пользовательский тип сообщения «hello-world» при доступе к URL site.com/hello-world.

Кто-нибудь подскажет мне направление?


Редактировать: Внимать в нее больше и думать об этом. Как насчет save_post, проверьте, является ли пользовательский тип сообщения, подключается к другой базе данных и делает последний идентификатор вставки, сохраняет его локально и затем обновляет внешнюю базу данных с внутренним идентификатором сообщения?

введите описание изображения здесь

Основываясь на приведенных выше подробностях, я могу подумать о следующих предложениях:

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

  2. Синхронизация данных (вариант 1). Напишите плагин, который вы устанавливаете на обоих серверах, и этот плагин будет периодически считывать данные из другой базы данных и обновлять свои собственные записи

  3. Синхронизируйте данные (вариант 2). Напишите функциональность, которая при обновлении записи в базе данных 1 вызовет вызов API REST, который будет отправлен на вторую установку. Затем эта вторая установка получит обновленные данные из первой установки через этот вызов и обновит свои собственные записи.

  4. Создайте центральную базу данных, к которой обе установки имеют доступ, и эта центральная база данных будет содержать общие данные для обеих установок

  5. Вы думали о настройке сети WordPress (не уверен, что это работает в этой среде, вам нужно решить, соответствует ли это вашим требованиям)

Лично мне нравятся варианты 3 и 4, основываясь на моем понимании проблемы, но опять же, у меня нет полной картины, как вы.

Если вы должны были создать отдельную таблицу для подключения обеих установок WordPress, вам нужно будет сделать пользовательские функции удаления, редактирования и добавления, чтобы данные были отправлены в нужную базу данных.

Если вам уже нужно делать эти пользовательские функции (многие способы подключиться к персонализированным постсоветским пост, редактировать, удалять и т. Д.), Почему бы просто не иметь на одном сайте «главную БД», а другой сайт просто использует wpdb для подключения к что другие db и получите, отредактируйте, опубликуйте на нем. Нет необходимости в сложной проверке согласованности, поскольку все это удерживается в одной таблице.