Обмен данными через JSON с 1С на WordPress
Техническое задание для обмена данными через JSON на WordPress
Цель:
Обеспечить корректную синхронизацию остатков товаров между 1С и WordPress через файл JSON. На текущий момент существует проблема с большим объемом данных — файл зависает и не обновляет информацию на сайте при большом количестве товаров.
Задача:
Реализовать на стороне WordPress механизм, который позволит обрабатывать большие файлы JSON, разбивать обработку на меньшие части (пакеты) и обеспечить стабильную синхронизацию данных без перегрузок.
Основные требования:
Обрезка данных в JSON-файле:
- Реализовать разбивку большого JSON-файла на части (пакеты) для поэтапной обработки.
- Создать механизм, который позволит обрабатывать файлы частями, например, по 100–200 товаров за один раз, чтобы избежать тайм-аутов или перегрузок сервера.
Фоновое выполнение обмена данными:
- Настроить фоновую обработку для пакетов товаров
- Каждый пакет должен обрабатываться отдельно, и после обработки должен отправляться сигнал для обработки следующего пакета, пока не будут обработаны все товары.
- Убедиться, что данные корректно обновляются даже при больших объемах товаров.
Логирование и обработка ошибок:
- Реализовать логирование процесса обмена данными: записывать дату и время начала/завершения каждого пакета, количество товаров, которые были успешно обновлены, и возможные ошибки.
- В случае возникновения ошибок, добавить возможность повторной обработки только тех пакетов, которые не были обработаны корректно.
Обновление товаров на сайте:
- Для каждого товара должен быть проверен артикул (SKU). Если товар уже существует на сайте, должно быть обновлено количество на складе и, при необходимости, цена.
- Если товар не найден в базе WooCommerce, он должен быть создан как новая запись (при необходимости).
Соответствие данных между JSON и WooCommerce:
- Убедиться, что формат файла JSON, полученного из 1С, соответствует тем полям, которые используются в WooCommerce (артикул, количество, цена).
- При необходимости провести валидацию данных перед обработкой каждого пакета, чтобы избежать проблем с некорректными данными.
Технические ограничения сервера:
- Настроить PHP-лимиты на сервере для обеспечения достаточного времени на обработку каждого пакета товаров:
max_execution_time = 300(или больше). - здесь по инициативе разработчикаmemory_limit = 256M(или больше). - здесь по инициативе разработчика
- Если возникает необходимость, разработать механизм для распределения больших объемов данных на несколько сессий, чтобы избежать перегрузок и тайм-аутов.
- Настроить PHP-лимиты на сервере для обеспечения достаточного времени на обработку каждого пакета товаров:
Периодическая синхронизация:
- Настроить автоматический запуск процесса синхронизации (например, каждые 2 часа).
- Обеспечить возможность ручного запуска процесса обмена данными из 1С для администраторов сайта.
Интерфейс для отображения статуса синхронизации:
- Создать на странице администратора WordPress (или в специальном плагине) интерфейс для просмотра статуса обмена:
- Время последнего успешного импорта.
- Количество обработанных пакетов.
- Логи успешных обновлений и ошибок.
- Создать на странице администратора WordPress (или в специальном плагине) интерфейс для просмотра статуса обмена:
Входные данные:
- Файл JSON, который передается из 1С (структура: артикул, количество на складе, цена).
- API или FTP доступ для передачи файла JSON на сервер WordPress (предоставленный 1С).
Срок выполнения:
[Указать конкретный срок для выполнения задания]
Результат:
- Стабильная синхронизация данных из 1С, даже при большом количестве товаров.
- Отсутствие зависаний или прерывания процесса обмена.
- Полный лог процесса для отслеживания статуса импорта данных.
- Возможность ручного запуска обмена и просмотра статуса синхронизации.
-
866 26 4 1 Обработчику передаются имя и границы, а он уже делает выборку из файла с... до... и передаёт найденный кусок, как файл, сопровождая это теми же границами. Всё достаточно просто.
-
14721 218 0 Добрый день!
У меня большой опыт работы с WordPress и синхронизации данных между сервисами.
Обращайтесь, обсудим все детали.
-
11628 110 0 Здравствуйте, Константин!
Выполним вашу задачу.
Оценка после ознакомления с проектом.
С уважением, Татьяна.
-
придбайте плагін та і все ))
-
Актуальные фриланс-проекты в категории PHP
Модуль для OpenCart: массовое создание товаров из папок с изображениямиРазработка модуля массового создания товаров для OpenCart (ocStore 3.x) Необходимо разработать административный модуль для OpenCart / ocStore 3.x, который автоматически создает товары из заранее подготовленной структуры папок с изображениями.Основной функционал: массовое… CMS, PHP ∙ 1 день 3 часа назад ∙ 42 ставки |
Ищем специалиста Bitrix24 / интегратора CRM для настройки автоматизацииНаша компания работает с CRM Bitrix24. Нам нужен специалист, который сможет настроить автоматическое добавление номера телефона в лиды/заказы в двух форматах. Автоматизация должна быть корректно настроена для двух стран: Республика Молдова и Румыния. Задача: При создании лида… PHP, Веб-программирование ∙ 4 дня 6 часов назад ∙ 24 ставки |
Оптимизация сайтаОптимазация сайта jdgreta.co.uk на Shopify. Сео аудит приложен к проекту. Основные задачи - - Поправить все мета данные - Выполнить ТЗ для программиста (тк в этом проекте совмещены задачи для программиста и СЕО, если вы не компания - можете использовать помощь) - Поправить… HTML и CSS верстка, PHP ∙ 5 дней 2 часа назад ∙ 33 ставки |
Специалист по HoroshopНужен специалист, который сможет правильно настроить товарный Feed. Проблема: Сейчас более 13 000 товаров выгружаются с одинаковым значением типа (например, «все для маникюра и педикюра»). Из-за этого в Google Ads невозможно разделить товары на сегменты и задать разные… PHP, Сопровождение сайтов ∙ 6 дней 4 часа назад ∙ 21 ставка |
Сделать так, чтобы письма о заказах из магазина не попадали в спамСейчас есть магазин на опенкарт, письма о заказах попадают в спам, нужно сделать так, чтобы они попадали во Входящие (ukr.net gmail), проверьте. Хостинг написал: Плохая доставка электронной почты может быть связана с низкой репутацией отправителя - IP или домена. В таком… PHP, Веб-программирование ∙ 7 дней 6 часов назад ∙ 47 ставок |