ZebroidФорумПубличный разделВопросыПодскажите по импорту xml файла

Подскажите по импорту xml файла

21 октября 2013, 22:01
Зарегистрирован: 14 марта 2010, 01:35
Здравствуйте. Подскажите пожалуйста.

Файл имеет такой вид


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE yml_catalog SYSTEM "shops.dtd">
<yml_catalog date="2013-10-21 02:30">
  <shop>
    <name>GdeSlon.ru</name>
    <company>GdeSlon</company>
    <url>http://www.gdeslon.ru/</url>
    <currencies>
      <currency rate="1.0" id="RUR"/>
    </currencies>
    <categories>
  <category id="41"><![CDATA[Мебель]]></category>
 
 <category parentId="41" id="623"><![CDATA[Фурнитура]]></category>
  <category parentId="623" id="86852"><![CDATA[шатура]]></category>
  <category parentId="623" id="86876"><![CDATA[мебельсон]]></category>
 
 <category parentId="41" id="42"><![CDATA[Детская мебель]]></category>
  <category parentId="42" id="10357"><![CDATA[ника]]></category>
  <category parentId="619" id="144172"><![CDATA[пинмеджиик]]></category>
 
 <category parentId="41" id="621"><![CDATA[Корпусная мебель]]></category>
  <category parentId="621" id="10357"><![CDATA[ника]]></category>
  <category parentId="621" id="24701"><![CDATA[win max ent]]></category>
 
 <category parentId="41" id="46"><![CDATA[Надувная мебель]]></category>
  <category parentId="46" id="13183"><![CDATA[intex]]></category>
  <category parentId="46" id="13301"><![CDATA[1toy]]></category>
  <category parentId="46" id="15253"><![CDATA[bestway]]></category>

</categories>
    <offers>
  
  <offer gs_category_id="361" available="true" id="18387712" gs_product_key="f7844badcac4371eccf6020e05daf747a264fed7" merchant_id="40331">
    <url>http://www.gdeslon.ru/r/902d5408af58648487670d85e629f7b508a8098f/18387712/?sub_id=</url>
    <price>1249.00</price>
    <currencyId>RUR</currencyId>
    <thumbnail>http://static.gdeslon.ru/uploads/commodities/00/18/38/77/12/picture/small.jpg</thumbnail>
    <picture>http://static.gdeslon.ru/uploads/commodities/00/18/38/77/12/picture/big.jpg</picture>
    <name><![CDATA[Подушки на стул, 2 шт. в упаковке]]></name>
    <description><![CDATA[с завязками. Наружный материал – хлопковая ткань ручной вязки. Набиты полиуретановым волокном. Стирка при 40°. Ширина 40 см, глубина 39 см. Толщина примерно 7 см.]]></description>
    <categoryId>112852</categoryId>
    <vendor><![CDATA[ELLOS]]></vendor>
    <param name="Бренд продукта"><![CDATA[Ellos Home]]></param>
    <param name="Размер"><![CDATA[(40X39)]]></param>
    <param name="oldprice"><![CDATA[1249.0000]]></param>
    <param name="Цвет"><![CDATA[Бордо, Льняной бежевый, Розовый меланж, Серый, Черный, Экрю]]></param>
    <original_picture><![CDATA[http://media.redcatsnordic.com/ellos/images/products/normal/07-06/07-0601ds.jpg]]></original_picture>
  </offer>
  
  
  <offer gs_category_id="623" available="true" id="19040476" gs_product_key="cc50b132f7d085baec41ca87ba0f8938bab49edf" merchant_id="40331">
    <url>http://www.gdeslon.ru/r/902d5408af58648487670d85e629f7b508a8098f/19040476/?sub_id=</url>
    <price>799.00</price>
    <currencyId>RUR</currencyId>
    <thumbnail>http://static.gdeslon.ru/uploads/commodities/00/19/04/04/76/picture/small.jpg</thumbnail>
    <picture>http://static.gdeslon.ru/uploads/commodities/00/19/04/04/76/picture/big.jpg</picture>
    <name><![CDATA[Чехол из хлопкового джерси, представлен в трех размерах.]]></name>
    <description><![CDATA[С эластичной тесьмой. Мягкий 100% хлопковый джерси. Длина 200 см, высота 30 см. При заказе укажите размер. Стирка при 60°.]]></description>
    <categoryId>112852</categoryId>
    <vendor><![CDATA[ELLOS]]></vendor>
    <param name="Бренд продукта"><![CDATA[Ellos Home]]></param>
    <param name="Размер"><![CDATA[(160X200), (180X200), (90X200)]]></param>
    <param name="oldprice"><![CDATA[799.0000]]></param>
    <param name="Цвет"><![CDATA[Бежевый, Белый, Серый, Синий, Слоновая кость, Черный]]></param>
    <original_picture><![CDATA[http://media.redcatsnordic.com/ellos/images/products/normal/86-86/86-8672bs.jpg]]></original_picture>
  </offer>
  

  <offer gs_category_id="" available="false" id="23742904" gs_product_key="689911ec6ffe1ba1f3714617392fa6346a263942" merchant_id="2573">
    <url>http://www.gdeslon.ru/r/902d5408af58648487670d85e629f7b508a8098f/23742904/?sub_id=</url>
    <price>2459.00</price>
    <currencyId>RUR</currencyId>
    <thumbnail>http://static.gdeslon.ru/uploads/commodities/00/23/74/29/04/picture/small.jpg</thumbnail>
    <picture>http://static.gdeslon.ru/uploads/commodities/00/23/74/29/04/picture/big.jpg</picture>
    <name><![CDATA[Outwell Flock Deluxe Double]]></name>
    <description><![CDATA[Надувная кровать Outwell Flock Deluxe Double, выполненная из поливинилхлорида, элементарно надувается и сдувается. Благодаря своей конструкции она может выдерживать большие нагрузки.]]></description>
    <categoryId>98765</categoryId>
    <original_picture><![CDATA[http://img.sotmarket.ru/standart/img/turizm_i_otdix/naduvnye_matrasy_i_krovati/outwell/outwell-flock-deluxe-king.jpg]]></original_picture>
    <original_picture><![CDATA[http://img.sotmarket.ru/img/turizm_i_otdix/naduvnye_matrasy_i_krovati/outwell/outwell-flock-deluxe-king.jpg]]></original_picture>
  </offer>
  
</offers>
  </shop>
</yml_catalog>


Вопрос как убрать подкатегории.
Сейчас после импорта структура категорий такая:

Мебель
  Фурнитура
      шатура    
      мебельсон
  Детская мебель
      ника
      пинмеджиик
  Корпусная мебель
      ника
      win max ent

А мне нужно так:

Мебель
  Фурнитура
  Детская мебель
  Корпусная мебель

или так:

Фурнитура
Детская мебель
Корпусная мебель

И еще один вопрос.
Как из вот этого извлечь данные?

<param name="Бренд продукта"><![CDATA[Ellos Home]]></param>
    <param name="Размер"><![CDATA[(160X200), (180X200), (90X200)]]></param>
    <param name="oldprice"><![CDATA[799.0000]]></param>
    <param name="Цвет"><![CDATA[Бежевый, Белый, Серый, Синий, Слоновая кость, Черный]]></param>


Комментарий отредактирован 2 раз(а). Последний раз редактировал qwert666 21 октября 2013, 22:03.
21 октября 2013, 23:58
Зарегистрирован: 10 апреля 2012, 00:00
Вопрос как убрать подкатегории.
Никак. Можно либо в качестве категории использовать конечные категории (т.е. игнорировать родителей категорий), либо сохранять всю структуру. А вы хотите, чтобы 2 уровня категорий сохранялись, а третий нет.

И еще один вопрос.
Как из вот этого извлечь данные?
Ответ на этот вопрос есть в документации. Даже пример практически такой же, как у вас.

22 октября 2013, 00:09
Зарегистрирован: 14 марта 2010, 01:35
Спасибо.