Переписать парсер litres.ru под miniShop2

Копенко7 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
18.10.2018

Переписать парсер litres.ru под miniShop2

Здравствуйте, коллеги. Из-за нехватки времени, нет возможности заняться одним проектом. Есть партнёрка litres.ru, хочется оформить всё это дело под miniShop2, а для этого нужно переписать парсер под xPDO (или MODX API). 

Вот собственно что у них есть https://www.litres.ru/o-kompanii/partnerskie-progr...

Из предложенных заготовок плагин для вордпресса и DLE drive.google.com/drive/u/0/folders/0B3zOoAR4NvuKfk dDRmFFY2F4ZTRWS1l2QWs5RkpaWmpVVXMtVmNuUzJPUk8xWWZ6 Sk5hTVE 

А также документация по API 

Вообщем что было сделано, загружена таблица на 250к книг, но последняя запись добавленная за 20.02.2018 

Все запросы идут с подключением mysql_, у меня не работает, т.к. на сервере нативный PHP 7.0.30. Вообщем нужно импортировать с API все книги и этот файл повесить на крон, чтобы он проходил по всей базе и при необходимости менял статус в поле options. 

Собственно вот описание что из себя представляет тот или иной файл: 

Описание скриптов для синхронизации с каталогом litres.ru 

Ниже описание php-скриптов (примеры php для Wordpress и DLE в архивах). Cкрипты необходимо настраивать и тестировать, докручивать под свой сайт. К сожалению, создать универсальный скрипт нельзя, т.к. все хранят данные по разному (в разных полях). 

Мы можем сами поставить и настроить скрипты под ваш сайт бесплатно, в таком случае необходимо предоставить ФТП/Шел доступ. 

import_litres_data.php импортирует данные из xml потока Литреса в локальную sql базу партнера (в таблицу litres_data). 

Настройки и допиливания не требует, универсален для всех. 

Данный скрипт должен выполняться раз в сутки по Cron* 

litres_data.zip таблица litres_data с данными актуальными на 13.04.2015. Дамп из нее нужно развернуть в локальной БД партнера. 

config.php настраивается доступ к базе партнера, в основном через инклуд конфиг движка сайта. 

compare_bases.php сравнение базы книг литрес (из таблицы litres_data) и локальных книг партнера. По результатам сравнения: 

либо проставляется метка в поле xfields (для DLE движка); 

либо составляется таблица соответствий локальных книг и литресных; 

либо в поле full_story (для WP движка) вырезается ссылка на скачивание и вставляется ссылка на литрес. 

Данный скрипт должен выполняться раз в сутки по Cron. 

functions.php здесь находятся функции используемые в compare_bases.php. Тщательно настраиваются под каждого партнера. Универсального решения нет. 

checklist.php выводит в браузер список не совпавших книг. 

litres_books.php используется для добавления литресных книг на сайт партнера. Тщательно настраиваются под каждого партнера. Универсального решения нет. 

*Cron утилита linux для выполнения заданий по расписанию. Cron-задания должны ставиться в админ-панели хостинга. 

Кроме того, по результатам сравнения для каждой совпавшей книги мы знаем соответствующий hub_id. По нему мы можем (руководствуясь мануалами по API:https://www.litres.ru/o-kompanii/partneram/partner... проставить ссылки на отрывки. 

Если на вашем сайте есть онлайн-чтение, то оно подрезается до 20%. Для этого нужно найти в движке место, где выводятся страницы чтения и подрезать объем текста до необходимых процентов. В конце такого чтения также проставляется ссылка на покупку книги на Литрес.