1369 2

Импорт из CSV в MODX, импорт в miniShop2

Особенности:

  1. Это не сниппет, это самодостаточный скрипт.
  2. Использует процессоры для импорта ресурсов и изображений.
  3. Умеет обновлять ресурсы по указанному ключевому полю.
  4. Поддерживает ТВ параметры и поля товаров, включая JSON типа size и color.
  5. Есть режим отладки, с подробным логом и обработкой только первой строки файла.
  6. Выводит сообщения через системный лог.

Теретически, можно импортировать не только товары, но и категории или другие ресурсы, но не проверял.

Скрипт входит в состав miniShop2 с версии 2.1.4 и лежит в /core/components/minishop2/import/csv.php. Запускать его можно как из браузера (если у вас открыта директория core), так и из консоли.

Если захотите его перенести в другое, более подходящее место, то нужно отредактировать строку

require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/config/config.inc.php';

и указать другой путь для получения config.inc.php.

Если вы запускаете скрипт из core, и вообще, если у вас открыта core всем гостям — то вы сам себе злобный буратина. Это небесопасно, я вас предупредил!

Параметры

Параметры можно указывать двумя путями: через командную строку и через массивы $_GET или $_POST

  • file — путь к импортируемому файлу, от корня сайта. Например «core/import/file.csv»
  • fields — строка с полями испортируемого файла.
    Здесь нужно перечислить имена, как они идут в файле. Например: «alias,article,pagetitle,price,image,discount».
    В параметре и файле можно использовать не только поля ресурса, но и:
    • Массивы свойств товара: «size,size,size,color,color»
    • Изображения для галереи: «gallery,gallery,gallery»
    • ТВ параметры (слово «tv» + id параметра): «tv1,tv2,tv3»
  • update — указывает, нужно ли обновлять ресурсы. Значения 1 или 0.
  • key — если включено обновление, обязательно нужно указать ключ товара, по которому определяется его уникальность. Например «article».
  • debug — Режим отладки. Если = 1, то скрипт подробно обрабатывает первую строку файла и выходит.
  • delimeter — Разделитель колонок в csv файле, по умолчанию ";".

Если вы загружаете изображения в галерею, я рекомендую указать товарам id медиа источника source, чтобы не получить кучу картинок в корне сайта.

Примеры

Импорт через консоль:

php ./core/components/minishop2/import/csv.php "file.csv" "article,pagetitle,tv1,size,size,gallery,gallery,tv3" 1 "article" 1 "|"

Импорт через браузер

http://mysite.com/core/components/minishop2/import/csv.php?file=file.csv&fields=article,pagetitle,tv1,size,size,gallery,gallery,tv3&update=1&key=article&debug=1&delimeter=|

В конце работы скрипт выведет статистику и ошибки, если есть.

Комментарии ()

  1. Игорь 14 июля 2022, 10:09 # 0
    Подходит для импорта любых ресурсов, главное указать нужный class_key.
    Можно не устанавливать minishop, а просто скачать файл csv.php
    1. Fox 10 января 2023, 15:58 # 0
      :like

    События

    Свежие новости

    В сеть слили видео геймплея, пока ещё невыпущенной, отечественной игры «Смута».

    21 февраля 2024, 11:06

    Helldivers 2 превзошла рекорд GTA 5 по количеству игроков за все время в Steam

    Helldivers 2 возглавляет рейтинги Steam и в настоящее время занимает первое место на PlayStation Store.

    19 февраля 2024, 18:48

    Создатели ChatGPT представили нейросеть Sora, генерирующую видео по текстовому описанию

    Новая нейросеть Sora от OpenAI создаёт видео по текстовому описанию с очень впечатляющим качеством, но пока без звука и продолжительностью до минуты. Некоторые примеры сложно отличить от реальной съёмки, а другие смотрятся почти как дорогой мультфильм от Pixar.

    16 февраля 2024, 11:23

    Быстрые ответы от нейросети YandexGPT в поиске Яндекса стали доступны всем пользователям

    Яндекс расширяет тестирование быстрых ответов от YandexGPT в «Поиске», делая их доступными всем пользователям для ограниченного набора запросов. Благодаря нейросети YandexGPT, ответы становятся более точными на сложные вопросы, с активными ссылками на источники

    07 февраля 2024, 22:48

    Rockstar опубликовала официальный трейлер GTA 6

    В трейлере GTA VI показаны фрагменты катсцен и кадры на игровом движке, которые позволяют предварительно оценить качество графики, детализацию персонажей и объектов, а также анимацию тайтла.

    06 декабря 2023, 12:34

    Все новости