Перейти к содержанию
Форум поддержки пользователей VamShop

Нет товара в YML.


Рекомендуемые сообщения

Только начинаю разбираться с движком, потому очередной неумный вопрос...

Итак: сейчас на сайте включены два товара. Я уже 100 раз посмотрел включен ли  XML на первом товаре. Влючен. Все включено (и товар, и категория, и подкатегория), и огоньки зеленые а не красные, и везде нажато на "ВКЛ."

А в XML - нет второго товара, только один  ???

Ссылка на сообщение
Поделиться на другие сайты

Проверьте в админке у этих товаров указано количество на складе?!

т.е. нужно что б количество на складе больше 0 было.

Либо в Админке - Настройки - Яндекс-маркет - Товар в наличии поставьте false

Ссылка на сообщение
Поделиться на другие сайты

Проверьте в админке у этих товаров указано количество на складе?!

т.е. нужно что б количество на складе больше 0 было.

Либо в Админке - Настройки - Яндекс-маркет - Товар в наличии поставьте false

На складе и у того и у другого товара стоит "0". В Админке - Настройки - Яндекс-маркет - Товар в наличии false поставил. XML почему-то не изменился...

Ссылка на сообщение
Поделиться на другие сайты

А если поставить больше 0 на складе?!

Сейчас поставлено в Админке - Настройки - Яндекс-маркет - Товар в наличии - true. Кол-во так и оставил "0". И все нормально. Почти.

(Впрочем "Товар в наличии" - это и есть товар в наличии или на заказ, на присутствие в XML товаров как таковых это видимо не влияет).

А "почти" - потому что дело обстоит следующим образом:

Когда я писал в первый раз - было 2 товара и только 1 в XML-файле. Потом я добавил 3-ий товар - в XML-файле стало теперь 2 товара :D, и так далее (XML=n-1, где n - кол-во включенных товаров в магазине ;D). И, в итоге, у меня 112 товаров включено сейчас - а в XML-файле только 111. И так было с самого начала (я проверил по Я Маркету).

Т.е. в XML-файле все время на одну единицу меньше позиций чем реально включено на сайте ???.

зы Кроме того в Яндекс Маркете почему-то нет моих картинок. На сайте картинки есть, в XML-файле тоже ссылки на картинки есть, а на Маркете картинок нету ???

Ссылка на сообщение
Поделиться на другие сайты

Да вроде нет такого ограчения, если товар есть на складе, должен выводиться в маркет.

По картинкам тоже самое, посмотри, если в market.php картинка выводится, то значит на стороне скрипта всё правильно, он отдаёт информацию о картинке.

Попробуй у поддрежки яндекса спросить.

Ссылка на сообщение
Поделиться на другие сайты
  • 4 months later...
Алексей Ананьев

Кстати я сегодня тоже обнаружил эту проблему. Один товар не добавляет в yml, могу дать ссылку - сам посмотришь.

Да ещё заметил что не добавляет товар который должен стоять в yml последним.

Ссылка на сообщение
Поделиться на другие сайты

Пока не могу сказать, в чём дело.

Зарегистрируйте ошибку на vamshop.ru/bugs, если не сложно.

Ссылка на сообщение
Поделиться на другие сайты
  • 3 weeks later...

Вот новый модуль Я-Маркет, на основе модуля от Андрея Березина, за что ему спасибо.

В этом модуле нет такой проблемы.

Модуль будет включён в магазин со следующим патчем.

Как поставить:

1. В phpMyAdmin, в закладке SQL выполните такой код:


ALTER TABLE categories ADD yml_enable TINYINT(1) DEFAULT '1' NOT NULL;

INSERT INTO configuration (configuration_key, configuration_value,
configuration_group_id, sort_order, last_modified, date_added,
use_function, set_function) VALUES ('YML_USE_CDATA', 'true', '23',
'13', NULL, '0000-00-00 00:00:00', NULL,
'vam_cfg_select_option(array(\'true\', \'false\'),');
[/code]

2. Перепишите новые файлы в магазин.

3. Открывайте http://магазин.ру/market.php

market-vamshop.zip

Ссылка на сообщение
Поделиться на другие сайты

Скачал модуль Андрея. Установил.

Вышли критические ошибки.

После того, как закомментировал 2 функции все заработало нормально.

Правда не знаю как отнесется маркет к тому, что у меня теперь каждый товар появляется в yml столько раз, в скольких категориях он находится.

Ошибки, на которые ругалось:

106 строка set_time_limit не устанавливалось

325 строка iconv не понравилось

HTTP Сервер: Apache/2.2.4 (FreeBSD) DAV/2 PHP/5.2.0 with Suhosin-Patch mod_ssl/2.2.4 OpenSSL/0.9.7e

Версия PHP: 5.2.0 (Zend: 2.2.0)

Ссылка на сообщение
Поделиться на другие сайты

А у тебя такой товар скопирован как дубликат в разные категории?!

Тогда ведь это получаются разные товары, поэтому и выводятся.

Ссылка на сообщение
Поделиться на другие сайты

Да, скопирован как дубликат.

Отправил файл на валидацию маркета. Вижу:

Ошибка: Найдено предложение-дубликат: http://domlinz.ru/product_info.php?products_id=1 (строка 52, столбец 9)

Ошибка: Предложение отклонено: http://domlinz.ru/product_info.php?products_id=1 (строка 52, столбец 9)

и так по всем товарам, у которых есть дубликаты.

Кроме того, почему-то пропал RefId у всех товаров.

Если раньше все товары были http://domlinz.ru/product_info.php?products_id=1&refId=12345

то теперь просто http://domlinz.ru/product_info.php?products_id=1

параметр refId=12345 есть в админке на страничке настройки маркета, но не выводится :(

Если написать http://www....ru/market.php?refID=12345 то тоже ничего не появляется в ссылках

Ссылка на сообщение
Поделиться на другие сайты

Ну это вроде как логично ведь, если скопирован как дубликат, это ведь самостоятельный товар получается.

Не знаю, может попробовать в market.php заменить (т.е. добавить distinct):


$products_sql = "SELECT p.products_id,
[/code] на:
[code]
$products_sql = "SELECT distinct p.products_id,

По поводу refid сейчас гляну.

Спасибо, что пишешь об ошибках, как раз сейчас и потестируем модуль, что б при выхоже новой версии проблем по-меньше было.

Ссылка на сообщение
Поделиться на другие сайты

По поводу refid, попробуй добавить в market.php:


$yml_referer = YML_REF_ID;
[/code] после:
[code]
$charset = (YML_UTF8 == 'true') ? 'windows-1251' : $_SESSION['language_charset'];

Ссылка на сообщение
Поделиться на другие сайты

Заработало только после того как в 219 строке заменил

  $url = vam_href_link(FILENAME_PRODUCT_INFO, vam_product_link($products['products_id'], $products['products_name']) . (isset($_GET['ref']) ? '&ref=' . $_GET['ref'] : null) . $yml_referer, 'NONSSL', false);
[/code] на
[code]  $url = vam_href_link(FILENAME_PRODUCT_INFO, vam_product_link($products['products_id'], $products['products_name']) . (isset($_GET['ref']) ? '&ref=' . $_GET['ref'] : null) . (isset($yml_referer) ? '&' . $yml_referer : null), 'NONSSL', false);
Без этой замены товар выводился без амперсанда. При попытке вставить
$yml_referer = '&' . YML_REF_ID;

выводил только первую ссылку корректно а потом ругался на 29 строку 64 позицию. Что это значит я не понял, т.к. код начинается только с 85 строки, а до этого сплошные комментарии.

Ссылка на сообщение
Поделиться на другие сайты

А у меня вроде бы нормально.

У тебя в Админке - Настройки - Яндекс-маркет было указано:


&refID=твой-id-кампании
[/code]

Ссылка на сообщение
Поделиться на другие сайты

У меня было без амперсанда :)

Догадаться вставить амперсанд через админку я не смог  :-[  :o

Нашел вот такую странную вещь:

во всех товарах цена в market.php соответствует тому, что написано в магазине, а вот товар 10 почему-то не сответствует.

Цена товара 10 49р, а в маркете почему-то 229р.

Я так и не понял откуда этот глюк

- <offer id="10" available="true">
  <url>http://domlinz.ru/product_info.php?products_id=10&refID=12345</url>
  <price>229</price>
  <currencyId>RUR</currencyId>
  <categoryId type="Own">44</categoryId>
  <picture>http://domlinz.ru/images/product_images/thumbnail_images/10_0.jpg</picture>
  <deliveryIncluded />
- <name>
- <![CDATA[ Пинцет для контактных линз в футляре (10 см)
  ]]>
  </name>
+ <vendor>
- <![CDATA[ Россия
  ]]>
  </vendor>
  <vendorCode>123458</vendorCode>
- <description>
- <![CDATA[ Пинцет для контактных линз - обеспечивает удобство в обращении с Вашими линзами!
  ]]>
  </description>
  </offer>
[/code]

такая сумма не получается ни при каких конвертациях валют... возможно есть и другие глюки с ценой, но я их пока не видел.

Ссылка на сообщение
Поделиться на другие сайты

А что за 10 49 ?!

Почему пробел?

Никакого пробела :)

Цена товара №10 - 49р, но почему-то отображается как 229. Откуда взялось 229 я так и не смог найти

Ссылка на сообщение
Поделиться на другие сайты

Для пробы можно в /market.php попробовать заменить:


  vam_yml_out('  <price>' . $price . '</price>');

[/code] на:
[code]
  vam_yml_out('  <price>' . $products['products_price'] . '</price>');

Будет правильно выводиться вот так?!

Ссылка на сообщение
Поделиться на другие сайты

Вот новый модуль Я-Маркет, от Андрея Березина, за что ему спасибо.

Это не совсем так. Это модуль написанный по мотивам моего модуля для зен-карт. Причём уже устаревшего, не поддерживающего последние веяния:

<manufacturer_warranty> - предназначен для указания наличия или отсутствия официальной гарантии производителя на товар.

<country_of_origin> - предназначен для указания страны производителя товара.

<downloadable> - используется для отметки товаров, которые можно скачать.

http://partner.market.yandex.ru/legal/tt/?article=3532906

В силу того, что структура данных и интерфейсы зена сильно отличаются от оск/хт, сложность переделки модулей выше, чем модулей оск и, соответственно, вероятность латентных ошибок тоже выше. Это не беда, просто потребуется дополнительная отладка.

P.S. Рекомендую забыть о примитивных инструментах отслеживания типа $yml_referer и использовать GA.

Ссылка на сообщение
Поделиться на другие сайты

P.S. Рекомендую забыть о примитивных инструментах отслеживания типа $yml_referer и использовать GA.

Одно другому не мешает.

Очень удобно используя $yml_referer пользоваться GA.

Ссылка на сообщение
Поделиться на другие сайты

Чтобы полноценно использовать возможности GA, нужно автоматически формировать url товара в соответствии с рекомендациями GA - http://www.google.com/support/googleanalytics/bin/answer.py?answer=55518.

Никакой $yml_referer не позволит провести подобный анализ.

Кстати, не зависимо от того, какие доп.параметры url используются, следут помнить о дублировании контента.

Ссылка на сообщение
Поделиться на другие сайты
×
×
  • Создать...