====== Синхронизация отзывов Яндекс.Маркета ======
Пользователи Яндекс.Маркета могут оставлять отзывы как о товарах, так и об интернет-магазинах, существует возможность выводить эти отзывы на страницах сайта. Такая возможность может быть полезной для различных фирменных магазинов, которые хотят похвастаться мнением пользователей о товарах своего бренда.
В решении этой задачи нам поможет [[https://tech.yandex.ru/market/monetization/|контентный API Маркета]], для доступа к нему понадобится ключ, которому разрешена операция получения отзывов. Запросить ключ можно у тех. поддержки, ссылка есть в документации. Для работы с API Маркета разработан специальный класс.
У контентного API Маркета в [[https://tech.yandex.ru/market/content-data/|базовом доступе]] существует ограничение в 100 запросов в день, чтобы уложиться в это ограничение в классе реализовано кэширование запросов. Если обновление всех отзывов в течение 1 дня не удается, то оставшиеся отзывы обновляются в течение последующих дней. Количество дней обновления задается переменной ''$cacheDays''.
Далее приведены два сценария установки решения:
* Сценарий для синхронизации отзывов на товары, в этом случае отзывы будут прикрепляться к товарам, как комментарии,
* Сценарий для синхронизации отзывов на интернет-магазин, в этом случае отзывы будут сохраняться в отдельную информационную систему.
==== Синхронизация отзывов на товары ====
- Копируем класс в директорию модулей: [[private:koding:hostcms:modules:shop:useful:import_market_opinions:controller.php|/modules/kad/marketcontent/controller.php]]
- Копируем сценарий в директорию сценариев: [[private:koding:hostcms:modules:shop:useful:import_market_opinions:import_market_models_opinions.php|/cron/import_market_models_opinions.php]]
- Создаем доп. свойство для товаров, в которое необходимо будет занести ссылку на товар в Яндекс.Маркете, ссылка будет выглядеть примерно так: ''https://market.yandex.ru/product/1721171184''.
- Задаем настройки для сценария вверху файла:// Идентификатор интернет-магазина
$shopId = xxx;
// Доп. свойство, в котором хранится ссылка на стринцу товара в Яндекс.Маркете
$marketPropertyId = xxx;
// Ключ для Контентного API Маркета
$marketKey = 'xxx';
// Выводить техническую информацию
$log = FALSE;
// Количество дней актуальности кэша запросов
$cacheDays = 7;
- Ставим сценарий на автоматический запуск с помощью ''cron'' 1 раз в день.
==== Синхронизация отзывов на интернет-магазин ====
- Копируем класс в директорию модулей: [[private:koding:hostcms:modules:shop:useful:import_market_opinions:controller.php|/modules/kad/marketcontent/controller.php]]
- Копируем сценарий в директорию сценариев: [[private:koding:hostcms:modules:shop:useful:import_market_opinions:import_market_shop_opinions.php|/cron/import_market_shop_opinions.php]]
- Создаем информационную систему «Отзывы об интернет-магазине», в описание информационной системы заносим ссылку на интернет-магазин в Яндекс.Маркете, например, ''https://market.yandex.ru/shop/312135/reviews''.
- Задаем настройки для сценирия вверху файла:// Информационная система для хранения отзывов об интернет-магазине
$marketInfosystemId = xxx;
// Ключ для Контентного API Маркета
$marketKey = 'xxx';
// Выводить техническую информацию
$log = TRUE;
// Количество дней актуальности кэша запросов
$cacheDays = 7;
- Ставим сценарий на автоматический запуск с помощью ''cron'' 1 раз в день.
==== Примеры внедрения ====
- [[http://hasttings.ru|hasttings.ru]]
- [[http://slimtec.ru|slimtec.ru]]
Страницу создал Максим Засорин 30.05.17 в 17:38