ms3YandexMarket: YML для Яндекс Маркета и RSS для Google
Есть решение
Выкладываю ms3YandexMarket: из каталога MiniShop3 вы собираете YML для Яндекс Маркета или RSS для Google, а площадка скачивает файл по адресу, который задаёте в карточке прайса.
Компонент пишет файл на диск и не заходит в кабинеты Маркета и Merchant Center: площадка скачивает его по URL из карточки прайса.

Прайсов может быть несколько: у каждого свой набор тегов и один файл pricelist-{id}.xml в каталоге ms3yandexmarket_files_path, а в менеджере MiniShop3 раздел называется «Яндекс Маркет».

В форме назначения только catalog и placement: у каталога в YML есть блок categories, разделы отмечаете на вкладке «Категории», без отметок товары по разделу не фильтруются и блок categories пуст.

Назначение placement собирает файл, который заменяет условия в кабинете Маркета: вкладки «Категории» нет, в offer остаются поля из списка управляемых, атрибут id пишется всегда, а для Google всегда собирается RSS 2.0.
Число offer задаёт источник предложений: товар, вариант ms3Variants, комбинация ms3Remains или порядок «варианты, иначе комбинации, иначе товар», а остаток берётся из MiniShop3, ms3Variants, ms3Remains, автоматически или через «Свой источник», который считает число тем же порядком, что автоматический выбор, и порог min_stock в режиме skip убирает offer, если остаток не выше порога.

У тега магазина разбираются только setting: и value:, цену, адрес, картинку и производителя задают у тега предложения, Fenom там же префиксом fenom: при установленном pdoTools, пустой текст в файл не пишется, предложение без id пропускается.

Файл пишется вручную, по расписанию Scheduler или после сохранения товара: выключенный прайс планировщик и cron.php пропускают, предпросмотр на вкладке «Генерация» файл на диске не заменяет.

Журнал хранит запуски, диагностика проверяет среду и не проверяет файл прайса, а пустой shop в предпросмотре при живых товарах значит, что у тегов name, company и url не выбран источник.
Нужны MODX Revolution 3+, PHP 8.2+ с расширениями json, dom и xmlwriter, MiniShop3 1.13+ и VueTools 1.2+. По желанию подключайте ms3Variants, ms3Remains и Scheduler 1.9. Установщик кладёт маршрут в core/config/ms3.routes.d/manager/50-ms3yandexmarket.php, каталог core/config/ должен быть доступен на запись.
0
Файлы YML и Google RSS
Компонент пишет файл на диск и не заходит в кабинеты Маркета и Merchant Center: площадка скачивает его по URL из карточки прайса.

Прайсов может быть несколько: у каждого свой набор тегов и один файл pricelist-{id}.xml в каталоге ms3yandexmarket_files_path, а в менеджере MiniShop3 раздел называется «Яндекс Маркет».

Каталог и размещение в Маркете
В форме назначения только catalog и placement: у каталога в YML есть блок categories, разделы отмечаете на вкладке «Категории», без отметок товары по разделу не фильтруются и блок categories пуст.

Назначение placement собирает файл, который заменяет условия в кабинете Маркета: вкладки «Категории» нет, в offer остаются поля из списка управляемых, атрибут id пишется всегда, а для Google всегда собирается RSS 2.0.
Варианты, остатки и источники полей
Число offer задаёт источник предложений: товар, вариант ms3Variants, комбинация ms3Remains или порядок «варианты, иначе комбинации, иначе товар», а остаток берётся из MiniShop3, ms3Variants, ms3Remains, автоматически или через «Свой источник», который считает число тем же порядком, что автоматический выбор, и порог min_stock в режиме skip убирает offer, если остаток не выше порога.

У тега магазина разбираются только setting: и value:, цену, адрес, картинку и производителя задают у тега предложения, Fenom там же префиксом fenom: при установленном pdoTools, пустой текст в файл не пишется, предложение без id пропускается.

Запись, журнал и диагностика
Файл пишется вручную, по расписанию Scheduler или после сохранения товара: выключенный прайс планировщик и cron.php пропускают, предпросмотр на вкладке «Генерация» файл на диске не заменяет.

Журнал хранит запуски, диагностика проверяет среду и не проверяет файл прайса, а пустой shop в предпросмотре при живых товарах значит, что у тегов name, company и url не выбран источник.
Требования и ограничения
Нужны MODX Revolution 3+, PHP 8.2+ с расширениями json, dom и xmlwriter, MiniShop3 1.13+ и VueTools 1.2+. По желанию подключайте ms3Variants, ms3Remains и Scheduler 1.9. Установщик кладёт маршрут в core/config/ms3.routes.d/manager/50-ms3yandexmarket.php, каталог core/config/ должен быть доступен на запись.
Что дальше
- Документация на docs.modx.pro, с первого прайса начинайте с раздела quick-start.
- ms3YandexMarket на modstore.pro.



Комментарии: 0