Как можно сделать общую базу товаров для двух сайтов на Modx?
Здравствуйте!
Хотелось бы услышать мнение экспертов по поводу того, как лучше организовать этот процесс.
Есть два сайта на Modx Revo, оба на разных хостингах и принадлежат одной компании. На сайтах продаются товары металлопроката (арматуры, балки, уголки и тд)
В текущей ситуации цены часто меняются и соответственно встал вопрос, а можно ли как-то упросить процесс обновления цен. Чтобы условно обновили на одном сайте, и они обновились на другом.
Я додумался только до тупого решения. После обновления цен на основном сайте, программно делать post-запрос на условно-созданный update.php на втором сайте, где в теле запроса будет ассоциативный массив артикул-цена (артикулы товаров на обоих сайтах совпадают).
Подскажите, пожалуйста, может есть какое-то решение получше и вообще нормальный ли предложенный мой вариант?
Или соответственно основной вопрос: как сделать общую базу товаров для двух сайтов.
Хотелось бы услышать мнение экспертов по поводу того, как лучше организовать этот процесс.
Есть два сайта на Modx Revo, оба на разных хостингах и принадлежат одной компании. На сайтах продаются товары металлопроката (арматуры, балки, уголки и тд)
В текущей ситуации цены часто меняются и соответственно встал вопрос, а можно ли как-то упросить процесс обновления цен. Чтобы условно обновили на одном сайте, и они обновились на другом.
Я додумался только до тупого решения. После обновления цен на основном сайте, программно делать post-запрос на условно-созданный update.php на втором сайте, где в теле запроса будет ассоциативный массив артикул-цена (артикулы товаров на обоих сайтах совпадают).
Подскажите, пожалуйста, может есть какое-то решение получше и вообще нормальный ли предложенный мой вариант?
Или соответственно основной вопрос: как сделать общую базу товаров для двух сайтов.
Комментарии: 6
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Или на основном сайте сделайте выгрузку в простейший файл (текстовый) в формате «артикул: цена», а со второго по cron раз в час считывайте его да и обновляйте цены.
Инициатором обмена может быть как одна, так и другая сторона.
Варианты, которые вижу я.
1. Изменение цены одного продукта. В этом случае запускается событие, которое отправляет API запрос на сайт на сайт-приемник. В запросе артикул продукта и цена.
2. Изменение группы цен на сайте-доноре, в результате какой-то синхронизации со складом, например. В этом случае формируется текстовый файл json формата и посылается уведомление о готовности новых данных, со ссылкой на файл. Сайт-приемник, получив уведомление запускает скрипт обработки json файла
3. Сайт-приемник, самостоятельно, по расписанию запрашивает сайт-донор. Если товаров не много — то забирает на лету сформированный json Ответ. Если товаров много, то забирает файл, подготовленный заранее.
4. Если товаров много, то можно пойти дальше. Сайт-приемник первым запросом отправляет уведомление донору и необходимости подготовить свежие данные. Затем через несколько минут (сколько там нужно временим на подготовку файла с ценами), вторым запросом забирает подготовленный файл.
В целом все крутится вокруг json файла (или массива данных) и нескольких достаточно простых API запросов.