LabAndor Описать задачу

Данные и парсинг

  • Парсинг сайтов

Импорт и интеграции

Боты и автоматизация

  • Telegram-боты

Сайты и инфраструктура

  • VPS и серверы
  • Парсинг сайтов
  • Telegram-боты
  • VPS и серверы

Кейс · Ювелирный интернет-магазин, поставщик в ЕС

WordPress-плагин для синхронизации каталога с API поставщика

  • 20 000+Вариаций с ценами
  • 0Дублей SKU после импорта
  • 3Языка данных: RU, DE, EN
  • ~6 000Товаров в каталоге
  • 7Этапов, все приняты

Задача

Каталог ювелирного интернет-магазина наполнялся парсингом сайта поставщика из ЕС через сторонний фид. Работало это и раньше нестабильно: обновления срывались, товары дублировались, цены расходились с прайсом поставщика. Потом поставщик закрыл доступ по IP на уровне WAF. Обновления встали совсем: фотографии перестали скачиваться, цены вариаций не разбирались, каталог замер. Клиент договорился с поставщиком об официальном REST API, и задача стала другой — подключить магазин к API так, чтобы каталог снова обновлялся сам.

Что сделали

Мы спроектировали и написали плагин WordPress, который работает мостом между API поставщика и WooCommerce. По ключу доступа (Bearer-токену) он забирает товары, категории, цены, атрибуты, вариации и фотографии, приводит данные к одному виду и обновляет каталог по SKU. Повторный прогон копий не создаёт: товар с тем же артикулом обновляется на месте, а не заводится заново. Сбор больше не зависит от вёрстки чужого сайта и от того, пустит ли он запрос, — данные поставщик отдаёт сам.

Отдельной задачей были вариации. В ювелирном каталоге одно кольцо продаётся в нескольких размерах, и у каждого размера своя цена. Напрямую импортировать вариации инструмент импорта не позволял, поэтому плагин создаёт их сам: после сохранения товара срабатывает хук, разбирает JSON с вариациями и превращает его в настоящие вариации WooCommerce. Размеры колец и цепочек свели в один глобальный атрибут и отладили цены, пока каждый размер не стал показывать свою.

API отдаёт данные на трёх языках: русском, немецком и английском. Плагин берёт все три напрямую, вести переводы вручную на стороне магазина не нужно. Категорий в каталоге до 80, обновление идёт по расписанию WordPress раз в сутки.

Плагин писали и проверяли на локальной копии сайта, на рабочий переносили готовые версии. По пути чинили не только код:

  • импорт падал от нехватки памяти на хостинге и упирался в лимиты FastCGI;
  • хостер случайно откатил сайт из бэкапа, и его пришлось восстанавливать;
  • на том же сервере жил чужой взломанный сайт и съедал процессор, нашли и его.

Перед сдачей прогнали чистый импорт с нуля: около 6 тысяч товаров, треть из них вариативные, больше 20 тысяч вариаций и ни одного дубля SKU. Чистый импорт — строгая проверка: любая ошибка в сопоставлении артикулов сразу дала бы дубли. Товары без категории автоматически попадают в резервную рубрику и не теряются.

Результат

Каталог снова обновляется каждый день сам, теперь через официальный API поставщика, а не через разбор чужого сайта. Если поставщик переделает свой сайт, каталог этого не заметит: данные идут из API, а не со страниц. Работа шла серией из семи этапов, клиент принял каждый и оставил пять положительных отзывов, в одном из них: «Работа выполнена как всегда на высоте. Рекомендую!»

Технологии

WordPressWooCommercePHPREST APIWP All Import Prowp-cronMySQL
Все супер. Человек мастер своего дела. Все сдел то о чем договаривались.
Отзыв заказчика

Связанные услуги

Похожая задача?

Опишите, что нужно — проверим и вернёмся с предварительной оценкой. После согласования ТЗ отправим персональную ссылку на оплату.

Опишите задачу

Уточним детали и вернёмся с предварительной оценкой в выбранный канал. Финальные цену и срок подтверждает специалист.

Куда прислать ответ *