{{ cartCount }}
Компания EKF предлагает своим партнерам удобный способ настроить постоянный обмен данными между базой данных EKF и сайтом (интернет-магазином), работающим на системе управления сайтами 1С-Битрикс. Если сайт работает на «1С-Битрикс: Управление сайтом», то, используя данный модуль, Вы можете настроить автоматическое обновление номенклатуры и всех атрибутов, обновление остатков на складах EKF.
Скопировать модуль в папку /bitrix/modules/
Зайти в меню Marketplace – Установленные решения
(/bitrix/admin/partner_modules.php?lang=ru
) и установить решение «Обмен с ekfgroup.com
(ekf.exchange)»
Зайти в настройки модуля: Настройки – Настройки модулей – Обмен с ekfgroup.com
(/bitrix/admin/settings.php?lang=ru&mid=ekf.exchange&mid_menu=1
)
Запуск обмена осуществляется на странице Сервисы – Обмен EKFGroup
(/bitrix/admin/ekf_exchange.php
)
Рекомендуемым способом запуска обмена является запуск через консоль скриптов в папке
bitrix/modules/ekf.exchange/admin/exchange/products.php
Запуск через интерфейс, возможно, не сможет выполниться, это зависит от настроек вашего сервера.
Минимальная версия PHP, необходимая для работы модуля, – 7.1.
Из АПИ отдельно получаем:
categories.php
products.php
products.php>
remains.php
prices.php
files.php
full.php
Для обмена каждым типом данных создан отдельный скрипт в директории
bitrix/modules/ekf.exchange/admin/exchange/
При этом в обмене товарами в понимании битрикс содержится информация из нескольких
сущностей:
В начале каждого обмена запускается файндер – объект, который делает выборку данных из БД, сохраняет информацию в массив и затем позволяет без выполнения отдельного запроса на каждый товар сверить данные сайта и API и понять, нужно ли обновлять данные.
Существует несколько разных фандеров: ProductRemainsFinder для остатков, ProductsFinder – для элементов инфоблока и т. д.
Для того, чтобы понять, изменилась ли картинка товара, достаточно посмотреть на ее название из API. Название картинки является хэшем содержимого. Поменялось содержимое – поменялось и название.
Для того, чтобы понять, изменилась ли информация об элементе инфоблока и его свойствах,
рассчитывается хэш (чтобы не делать тяжелую выборку всех товаров и не помещать их в массив)
и записывается в свойство инфоблока (соозданное при установке модуля). EKF_HASH – хэш
основной информации, EKF_HASH_F – хэш файлов, EKF_HASH_P – хеш свойств. При изменении разделов
и товаров через API необходимо сбрасывать их хэш
(см. bitrix/modules/ekf.exchange/lib/handler/
).
Также для элементов инфоблока создается свойство EKF_UPDATED, чтобы после обмена мы могли понять, какие товары пропали из обмена и деактивировать либо удалить их.
Для документации по событиям
см. bitrix/modules/ekf.exchange/lib/functions/events.php
Модификации в код модуля вносить запрещено, т. к. это не позволит получать обновления. Если нужен какой-то функционал, пишите в техподдержку, мы добавим события в нужное вам место в код модуля.