XML-формат файла XML

Формат протоколу XML складається з тегів XML. Для усіх значень даних в grivone.ua XML повинне використовуватися маскування. Для самого файлу повинне використовуватися кодування UTF — 8.

ВИМОГИ ДО ФІДУ

  1. Фід повинен містити тільки актуальні оголошення.
  2. У даних не допускається присутність HTML- тегів.
  3. URL фіда має бути постійним і доступним по протоколу HTTP.

МАСКУВАННЯ СИМВОЛІВ

Для фіда повинне використовуватися кодування UTF — 8. Як це прийнято для усіх файлів XML, усі значення даних (включаючи URL) повинні використати маскування сутностей для символів. Детальніше ви можете ознайомиться розглянувши короткий опис XML файлу імпорту.

КОРОТКИЙ ОПИС СТРУКТУРИ XML ФАЙЛУ ІМПОРТУ:

<?xml version="1.0" encoding="UTF-8"?>
<bbs type="items-import-export">
  <items>
    <item id="0" external="0">
      <title>Заголовок объявления</title>
      <description>Текст подробного описания объявления</description>
      <user id="10" shop="0">user@gmail.com</user>
      <category type="offer">31</category>
      <geo delivery="0">
        <city id="255">Киев</city>
        <station id="30">Площадь Независимости</station>
        <district>5</district>
        <addr>переулок Тараса Шевченко, 8б</addr>
        <lat>50.451099</lat>
        <lon>30.530300</lon>
      </geo>
      <price currency="1" free="0" exchange="0" agreed="0" mod="1">1000.00</price>
      <images>
        <image id="8">http://example.com/files/image1.jpg</image>
        <image id="4">http://example.com/files/image2.jpg</image>
      </images>
      <contacts>
        <name>Имя пользователя</name>
        <phones>
          <phone>123 00 11 11</phone>
          <phone>123 00 22 22</phone>
        </phones>
        <skype>_Skype1_</skype>
        <icq>1234567890</icq>
      </contacts>
      <video></video>
    </item>
    <item id="0" external="0">...</item>
  </items>
</bbs></code>

Основной элемент <items> с вложенными <item>.

  • <item> включает в себя следующие атрибуты:
    • id который может быть равен нулю (0), в таком случае будет создано новое объявление, либо больше нуля, в таком случае будет выполнен поиск объявления по id в базе и если такое будет найдено, данные объявления будут обновлены.
    • external, при помощи которого доступна возможность указать ID во внешнем источнике, что позволяет в дальнейшем обновлять существующие объявления по указанному ID не привязываясь к ID в базе данных проекта. Данный атрибут принимает значения 0 или 1, в случае если указано значение 1, значение атрибута idобрабатывается как ID из внешнего источника.

В тег <item> входят следующие вложенные теги:

  • <title> — заголовок объявления (обязательный элемент)
  • <description> — описание
  • <user id="10" shop="0">Email пользователя</user> — пользователь, владелец создаваемого объявления, id — ID пользователя в базе, shop — ID магазина привязанного к данному пользователю либо 0.
  • <category type="offer">31</category> — ID категории, в которой будет размещено объявление, в данной категории не должно быть подкатегорий (обязательный элемент).
    • атрибут type определяет тип объявления и принимает следующие значения:
      • offer — предлагаю/продам (по-умолчанию)
      • seek — ищу/куплю
    • тег не является обязательным, в случае его отсутствия будет использована категория указанная в настройках импорта.
  • <geo delivery="0"> — гео. данные (обязательный элемент):
    • <city id="255">Киев</city> — ID города, название необязательно, главное указать атрибут id
    • <station id="30">Площадь Независимости</station> — ID станции метро, название необязательно
    • <district>5</district> — ID района города
    • <addr>переулок Тараса Шевченко, 8б</addr> — адрес на карте
    • <lat>50.451099</lat> — координата Lat на карте
    • <lon>30.530300</lon> — координата Lon на карте
    • атрибут delivery — возможность доставки в регионы, варианты 1 или 0 (по-умолчанию). В случае если в категории, в которую добавляется объявление, настройка «Доставка в регионы» выключена — данный атрибут игнорируется.
  • <price currency="1" free="0" exchange="0" agreed="0" mod="1">1000.00</price> — цена указываемая в объявлении.
    • атрибут currency — ID валюты
    • атрибут free — пометка «Даром», 0/1
    • атрибут exchange — пометка «Обмен», 0/1
    • атрибут agreed — пометка «Договорная», 0/1
    • атрибут mod — пометка «Торг возможен», 0/1
    • Значение — стоимость
  • <images> — изображения, прикрепляемые к объявлению
    • <image id="8">http://example.com/files/image1.jpg</image>
    • Атрибут «id» — ID изображение в таблице bff_bbs_items_images на случай если оно уже было загруженно ранее или 0
    • Значение — URL изображения для загрузки
  • <contacts> — контакты владельца объявления, указываются в каждом объявлении
    • <name> — имя
    • <phones> — телефоны
    • <skype> — skype
    • <icq> — icq
  • <video> — видео-ссылка(url) на ролик youtube / vimeo
Інші запитання з цього розділу