Формат MixMarket XML программы «Свой магазин»

Здравствуйте, уважаемые посетители моего блога Курилка.co.ua. Решение поисковых гигантов бороться с «продажными ссылками» вынуждает позаботиться об альтернативных вариантах. Если говорить о «честных» видах заработка, то выбор тут не велик. Впрочем, если вы можете позволить себе более-менее мощный хостинг, то и решений становится больше. Среди таковых – программа «Свой магазин» от партнерки MixMarket, чей XML формат данных и стал объектом моего внимания.

Но все по порядку. Авторизовавшись на сайте партнерской программы вам необходимо зайти на страницу «Mix-Товары», где нас интересует пункт подменю «Товарные группы». Здесь нам будет нужен блок: «Товарные группы «Свой магазин»». Понятно, что сначала вам необходимо «Создать товарную группу», отправить заявку и дождаться результатов проверки модератором. Как вы понимаете, к участникам предъявляются не маленькие требования. Допустим, что вам удалось пройти проверку. Вот как это может выглядеть:

Формат MixMarket XML программы «Свой магазин»

Здесь нас интересует пиктограмма XML, появившаяся в колонку «Тип программы», — кликаем. Откроется страница с адресами доступных XML документов. Обратите внимание на «Основной формат», рекомендованный для партнеров, создающий сайт с нуля. Ну а теперь поговорим о самом формате данных. Сразу скажу, данные XML предлагаются в кодировке UTF-8.

  • advertizers — список рекламодателей, содержащий теги adv — данные рекламодателя: идентификатор (атрибут id) и название(значение).<advertizers>
    <adv id="{идентивикатор}">{название}</adv>

    </advertizers>
  • regions_delivery — список регионов доставки товаров, содержащий теги rd — данные региона: идентификатор (атрибут id) и название (значение).<regions_delivery>
    <rd id="{идентификатор}">{название}</rd>

    </regions_delivery>
  • adv_region_delivery — список связей между рекламодателями (см. advertizers) и регионами доставки (см. regions_delivery), содержащий теги adv — данные рекламодателя: идентификатор рекламодателя (атрибут id), содержащий тег regions — список регионов доставки, содержащий теги rd — данные региона: идентификатор региона доставки (атрибут id).<adv_region_delivery>
    <adv id="{идентификатор рекламодателя}">
    <regions>
    <rd id="{идентификатор региона доставки}"/>

    </regions>
    </adv>

    <adv_region_delivery>
    P.S. Решение, выглядит не слишком удачным. Гораздо лучше и проще сделано с регионами геотаргетинга, но что есть, то есть.
  • regions_geotarget — список регионов геотаргетинга, содержит теги geo — данные региона геотаргетинга: идентификатор(атрибут id), родительский идентификатор (атрибут pid) и название (значение).<regions_geotarget>
    <geo id="{идентификатор}" pid="{родительски идентификатор}">{название}</geo>

    </regions_geotarget>
  • adv_region_geotarget — список связей между рекламодателями (см. advertizers) и регионами геотаргенга (см. regions_geotarget), содержащий теги geotarget — данные связи: идентификатор рекламодателя (атрибут advid) и идентификатор региона геотаргетинга (атрибут id).<adv_region_geotarget>
    <geotarget advid="{идентификатор рекламодателя}" id="{идентификатор региона геотаргетинга}"/>
    ...
    </adv_region_geotarget>
  • currencies — список курсов валют, содержит теги currency — данные валюты: идентификатор (атрибут id, к примеру: RUB, USD и т.п.) и курс (атрибут rate, по отношению к валюте со значением курса 1).<currencies>
    <currency id="{идентификатор}" rate="{курс}"/>
    ...
    </currencies>
  • brands — список брендов товаров, содержит теги brand — данные бренда: идентификатор (атрибут id) и название (значение).<brands>
    <brand id="{идентификатор}">{название}</brand>
    ...
    </brands>
  • categories — список категорий товаров, содержит теги category — данные категории: идентификатор (атрибут id), родительский идентификатор (атрибут parentId) и название (значение).<categories>
    <category id="{идентификатор}" parentId="{родительский идентификатор}">{название}</category>
    ...
    </categories>
  • offers — список товаров, содержит теги offer — данные товара:
    • идентификатор — атрибут id;
    • идентификатор бренда — атрибут brandid (см. brands);
    • идентификатор рекламодателя — атрибут advid (см. advertisers);
    • идентификатор категории — атрибут cat (см. categories);
    • URL картинки — атрибут src, формат: http://mixmarket.biz/images/of/{идентификатор рекламодателя}/{идентификатор товара}.jpg;
    • ширина катртинки — атрибут w;
    • высота катртинки — атрибут h;
    • тип — значение тега type;
    • название — значение тега name;
    • URL — значение тега url, формат: http://mixmarket.biz/clk.php?id={идентификатор товара}&gid={идентификатор партнера};
    • идентификатор валюты — значение тега currencyId (см. currencies);
    • описание — значение тега desc;
    • цена — значение тега price;

    <offers>
    <offer id="{идентификатор}" brandid="{идентификатор бренда}" advid="{идентификатор рекламодателя}" cat="{идентификатор категории}" src="{URL картинки}" w="{ширина катринки}" h="{высота картинки}">
    <type>{тип}</type>
    <name>{название}</name>
    <url>{URL}</url>
    <currencyId>{идентификатор валюты}</currencyId>
    <desc>{описание}</desc>
    <price>{цена}</price>
    </offer>
    ...
    </offers>

Как вы видите формат достаточно просто и удобный. Как по мне, намного лучше того же YML. По крайней мере, для партнерских программ такого рода. В тоже время, он имеет и ряд недостатков. При желании, можно было бы его легко довести до ума и избежав, ряд дублирующих данных. Но об этом мы поговорим в следующей заметке о парсинге MixMarket XML. На этом всё и спасибо за внимание.