Последние темы


CatalogFill как правильно настроить XML для импорта?

  • Про скачивание картинок вот тема:
    http://forum.modx-shopkeeper.ru/topic/1247/catalogfill-и-изображения

  • вот как выглядит строка (1 товар) в моем json файле
    {"Big Images": ["/assets/templates/img/img1.jpg", "/assets/templates/img/img2.jpg", "/assets/templates/img/img3.jpg"], "Small Images": ["/assets/templates/img/small_img1.jpg", "/assets/templates/img/small_img2.jpg", "/assets/templates/img/small_img3.jpg"], "Title": ["Iphone 7"], "Summary": [], "Price": ["499.99"], "Color": ["", "Red", "Pink", "Gray"], "Main Info": ["здесь много различного Html кода"], "Package Weight": []}

    Как она должна выглядеть в формате xml что бы при импортировании все было ок?

  • За ссылку по скачивании картинок отдельное спасибо 😃

  • Как она должна выглядеть в формате xml что бы все было ок?

    Зависит от того как вы потом будете это всё выводить на вашем сайте.

    "Main Info": ["здесь много различного Html кода"],

    XLS тоже нормально поддерживает HTML код, а вот с CSV могут быть проблемы.

  • Вот пример из одного из конфигов, которые есть в комплекте к компоненту:

    //Структура XML файла для импорта
    $cf_config['imp_xml_structure'] = <<<EOF
    <Good>
        <Kod>tv8</Kod>
        <Name>pagetitle</Name>
        <Options>
            <Stock>tv5</Stock>
            <Image>tv2</Image>
        </Options>
        <Prices>
            <RegularPrice>tv1</RegularPrice>
            <OldPrice>tv20</OldPrice>
        </Prices>
    </Good>
    EOF;
    

    Что тут непонятного? Вместо этого кода вы копируете свой XML и вместо данных вставляете имя поля или "tv20", где 20 - это ID ТВ параметра.

  • Просто буду в нужных местах вставлять [[*название tv]] тоесть на месте названия товара [[*Title]] и т.д. Html буду импортировать как код, внутри определенного дива на сайте. (будет отвечать за описания)

  • Основная проблема в картинках. Их в 1 товаре у меня от 0 до 10. Поэтому я их сложил в 1 Big Images в качестве массива.
    На сайте мне надо в 1 блоке вызвать первое значение массива Big Images(первую картинку), во втором вторую и т.д. А когда картинки заканчиваются - Не показывать блок с картинкой(это я уже сделал).
    Так вот - я не понимаю как правильно в XML должны выглядеть Big Images(сравнение как конвертирует онлайн конвертер и python библиотека в шапке).
    Какой из вариантов корректный:
    <Big_Images>tv первой картинки</Big_Images>
    <Big_Images>tv второй картинки</Big_Images>
    <Big_Images>tv третьей картинки</Big_Images>

    или

    <Big_Images type="list">
    <item type="str">tv первой картинки</item>
    <item type="str">tv второй картинки</item>
    <item type="str">tv третьей картинки</item>
    </Big_Images>

  • это я уже сделал

    И как вы это сделали? В каком виде данные вам нужны?

    Я жду от вас информацию:
    вот в таком виде данные у меня на сайте: ...
    а вот в таком виде данные у меня в файле, который хочу импортировать: ... (лучше показать в обоих форматах JSON и XML)

  • Участник @Tanik написал в CatalogFill как правильно настроить XML для импорта?:

    <Big_Images>tv первой картинки</Big_Images>
    <Big_Images>tv второй картинки</Big_Images>
    <Big_Images>tv третьей картинки</Big_Images>

    Самый простой способ это для каждой картинки создать отдельный ТВ параметр. В этом случае ваш код XML в конфиге будет выглядеть:

    //Структура XML файла для импорта
    $cf_config['imp_xml_structure'] = <<<EOF
    ... тут остальной код
    
    <Big_Images>tv10</Big_Images>
    <Big_Images>tv11</Big_Images>
    <Big_Images>tv12</Big_Images>
    
    ... тут остальной код
    EOF;
    

    10, 11, 12 - ID ТВ куда вам нужно импортировать.

  • Я уж было подготовил ответ, но вы уже ответили на мой вопрос.
    Как раз то что надо
    Большое спасибо!

 

Последние комментарии

  • @Andchir Спасибо огромное... Сделал как Вы сказали всё получилось... Рабаотает :))) +100500 Вам к карме)))

    Читать далее
  • @Andchir Спасибо попробую...☺

    Читать далее
  • Он реагирует на событие изменения способа доставки, а у меня цена формируется при изменении города...

    Вы может сделать так: Выбираете город, ставите сессию свою внутреннюю, не связанную с Шопкипером. Потом вызываете JS-функцию:

    SHK.selectDelivery('Доставка транспортной компанией');

    которая сделает запрос, где вызовется плагин. В этом плагине вы можете прочитать вашу сессию или куку, которую установили при выборе города. Далее достаете цену и возвращаете значение плагина. В коде Шопкипера ничего менять не нужно.

    Читать далее
  • @Andchir Да про плагин я знаю, но к сожалению он мне не подходит... Он реагирует на событие изменения способа доставки, а у меня цена формируется при изменении города... В этом то и проблема в принципе... В любом случае спасибо большое за ответы... Буду дальше ковыряться...

    Читать далее