type в файле яндекс маркета

#
type в файле яндекс маркета
Добрый день! Нужно чтоб товар в яндекс маркете относился к разделу книг. Для того чтобы он туда попал нужно прописать type="book". Как это сделать? Ниже то что ответил яндекс

Добрый день!
Для того, чтобы товары попали в раздел "книги", их следует описывать в
специальном формате type="book"
<offer id="12342" type="book" available="true" bid="17">
  <url>http://best.seller.ru/product_page.asp?pid=14345</url>
  <price>80</price>
  <currencyId>RUR</currencyId>

  <categoryId>3</categoryId>
  <picture>http://best.seller.ru/product_page.asp?pid=14345.jpg</picture>
  <delivery>true</delivery>
  <local_delivery_cost>300</local_delivery_cost>
  <author>Александра Маринина</author>
  <name>Все не так. В 2 томах. Том 1</name>

  <publisher>ЭКСМО - Пресс</publisher>
  <series>А. Маринина - королева детектива</series>
  <year>2007</year>
  <ISBN>978-5-699-23647-3</ISBN>
  <volume>2</volume>
  <part>1</part>
  <language>rus </language>
  <binding>70x90/32</binding>
  <page_extent>288</page_extent>

  <description>
Все прекрасно в большом патриархальном семействе Руденко. Но - увы! -
впечатление это обманчиво: каждого из многочисленных (еще)Все прекрасно в
большом патриархальном семействе Руденко. Но - увы! - впечатление это
обманчиво:
каждого из многочисленных представителей семьи обуревают свои потаенные
страсти
и запретные желания. И потому, когда погибает, причем явно.
  </description>

  <downloadable>false</downloadable>


</offer>
#
Re: type в файле яндекс маркета
Тут кто нибудь может подсказать как это сделать?
#
Re: type в файле яндекс маркета
В YML существуют несколько типов описаний предложений товаров: "упрощенный", "vendor.model", "book", "audiobook", "artist.title", "tour" и "event-ticket". В нашем файле скрипта, осуществляющего экспорт в YML, реализован только "упрощенный" тип описаний товаров. Поэтому если вам нужен другой тип(например, "book" ), вы можете внести соответствующие изменения в файл yandex_market.php самостоятельно.
#
Re: type в файле яндекс маркета
ок, спасибо. А где он лежит и он в не зашифрованном виде?
#
Re: type в файле яндекс маркета
tiv-dima писал(а):
А где он лежит
- в корне системы файл yandex_market.php. Если у вас его нет, запросите его в службе поддержки.
tiv-dima писал(а):
он в не зашифрованном виде?
- естественно, нет. Иначе как бы мы вам рекомендовали вносить в него изменения?
#
Re: type в файле яндекс маркета
Спасибо! С этим все получилось, но есть еще вопрос, надеюсь поможете.
Я создал свойство ISBN. Как сделать так что бы оно генерилось в файле маркета таким образом
<ISBN>978-5-699-23647-3</ISBN> . Что и где нужно добавить в yandex_market.php?
#
Re: type в файле яндекс маркета
tiv-dima писал(а):
Что и где нужно добавить в yandex_market.php?
- посмотрите в коде файла yandex_market.php каким образом добавляются другие теги, например, название товара:
echo  '<name>'.str_for_xml($row_item['shop_items_catalog_name'])."</name>\n";
и сделайте по аналогии.
Например:
$property_value = $shop->GetValueItemProperty($row_item['shop_items_catalog_item_id'], 123);
echo  '<ISBN>'.str_for_xml($property_value)."</ISBN>\n";
вместо 123 нужно указать идентификатор доп. свойства, созданного для хранения ISBN.
#
Re: type в файле яндекс маркета
/* DESCRIPTION*/
      echo  '<description>'.str_for_xml(html_entity_decode(strip_tags($row_item['shop_items_catalog_description']), ENT_COMPAT, 'UTF-8')."</description>\n";
$property_value = $shop->GetValueItemProperty($row_item['shop_items_catalog_item_id'],152);
echo  '<ISBN>'.str_for_xml($property_value)."</ISBN>\n";
      /* sales_notes*/
      // если значение элемента для sales_notes не указано, тогда подставляем по умолчанию
      if (mb_strlen(trim($row_item['shop_items_catalog_yandex_market_sales_notes'])))
      {
         $sales_notes = $row_item['shop_items_catalog_yandex_market_sales_notes'];
      }
      else
      {
         $sales_notes = $shop_row['shop_yandex_market_sales_notes_default'];
      }

      echo  '<sales_notes>'.str_for_xml(html_entity_decode(strip_tags($sales_notes), ENT_COMPAT, 'UTF-8')."</sales_notes>\n";

Вставил данный фрагмент
$property_value = $shop->GetValueItemProperty($row_item['shop_items_catalog_item_id'],152);
echo  '<ISBN>'.str_for_xml($property_value)."</ISBN>\n";
но выдает ошибку<offer type="book" id="3891" available="false">

<url>
http://www.liderknig.ru/shop/khobbi/vintazhnaja-moda-platja/
</url>
<price>990.00</price>
<currencyId>RUR</currencyId>
<categoryId>640</categoryId>

<picture>
http://www.liderknig.ru/upload/shop_3/3/8/9/item_3891/shop_items_catalog_image3891.jpg
</picture>
<name>Винтажная мода. Платья</name>

<description>
История  моды ХХ века предстанет перед вами в  потрясающих цветных иллюстрациях,  сделанных известными фотохудожниками  своего времени.
</description>
<br/>
<b>Notice</b>
:  Array to string conversion in

<b>
/home/httpd/vhosts/liderknig.ru/httpdocs/modules/Kernel/Security.fns.php
</b>
on line
<b>248</b>
<br/>
<ISBN>Array</ISBN>
<sales_notes/>
</offer>

Что не так сделал? Что нужно что бы это все заработало? Заранее спасибо
#
Re: type в файле яндекс маркета
тут кто нибудь поможет?
Модератор
#
Re: type в файле яндекс маркета
Метод GetValueItemProperty() возвращает массив. Поэтому используйте:

$property_value = $shop->GetValueItemProperty($row_item['shop_items_catalog_item_id'], 123);
echo  '<ISBN>'.str_for_xml($property_value['shop_properties_items_value']).'</ISBN>\n';
Вы только что начали читать предложение, чтение которого вы уже заканчиваете.
Авторизация