Ошибки и предупреждения, которые возвращает Яндекс.Маркет или валидатор XML-фидов
Не найдено описание для элемента "yml_catalog". Возможно неверно указан корневой элемент.
Спойлер
Откройте ссылку экспорта в браузере. Ответ должен начинаться с XML-декларации и содержать корневой тег yml_catalog. Если вместо XML открывается страница сайта, ошибка, пустой ответ или редирект — передайте Яндексу правильную ссылку из настроек модуля.
Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: Unknown tag: XML tag "b" (строка ...)
Спойлер
Откройте исходный код YML и найдите указанную строку. Проверьте журнал ошибок OpenCart, PHP и веб-сервера. Если обнаружено PHP-предупреждение, устраните его причину, затем сформируйте YML заново.
Отсутствует обязательный элемент picture
Спойлер
Проверьте, что у товара задана основная картинка и файл существует в папке image. В настройках LiveYML убедитесь, что в поле «Кол-во картинок товара» указано число больше нуля.
Если включена настройка «Не выгружать товары без картинок», модуль исключает товары без изображений из YML. При выключенной настройке товар может попасть в YML без тега picture, однако такой товар может быть отклонён Маркетом.
Ошибка спецификации XML. Приведите прайс-лист в соответствие с техническими требованиями выбранного формата...
Спойлер
Откройте XML и ответ валидатора, определите проблемный тег и товар. Не следует считать, что причиной всегда является keywords: этот тег поддерживается модулем, но может быть недопустим для конкретного формата или категории.
Если ошибка связана с keywords, временно выберите в настройке «Брать тег keywords из поля» значение «Не выгружать», сформируйте YML заново и повторите проверку.
No required offers's parameter
Спойлер
Требования зависят от категории и модели размещения. Для одежды, обуви и аксессуаров Маркет может требовать, например, цвет, размер, бренд, изображение или другие характеристики.
По строке ошибки определите товар и отсутствующий параметр. Укажите данные в атрибуте или опции OpenCart и настройте экспорт этого значения в LiveYML.
Ошибки, которые показываются в браузере
При открытии YML в браузере ошибка 500, 502 Bad Gateway или белый экран.
Спойлер
Сначала проверьте:
- журнал ошибок OpenCart;
- журнал PHP;
- журнал веб-сервера;
- наличие свободного места на хостинге;
- права записи в папку image/cache, если модуль создаёт копии изображений.
Не включайте отображение ошибок на рабочем сайте без необходимости: ошибки могут раскрыть пути на сервере, параметры подключения и другие служебные данные. Если журналы недоступны, обратитесь в техническую поддержку хостинга.
Ошибка синтаксического анализа XML: корневой элемент не найден
Спойлер
Откройте исходный код ответа, проверьте журналы ошибок и убедитесь, что используется адрес экспорта из настроек модуля.
This page contains the following errors: error on line ... at column ...: Extra content at the end of the document.
Спойлер
Откройте исходный код YML, перейдите к указанной строке и проверьте журналы ошибок OpenCart, PHP и веб-сервера.
Ошибка "Maximum execution time of 30 seconds exceeded"
Спойлер
Формирование большого YML-фида требует времени. При отключённой опции «Отдавать ссылки на оригинальные картинки» модуль создаёт копии изображений в image/cache. Первый запуск может быть долгим, а повторные обычно проходят быстрее за счёт уже созданного кэша.
Если включена опция оригинальных изображений, модуль отдаёт исходные файлы и не создаёт кэш 600×600.
Что можно сделать:
- уменьшить количество экспортируемых товаров или изображений;
- проверить настройки фильтрации;
- увеличить max_execution_time, если это разрешено хостингом;
- запускать экспорт по cron через PHP CLI.
Для основного магазина:
Код: Выделить всё
<полный_путь_к_php>/php -f <путь_к_сайту>/export/yandex_yml.php
Для магазина с ID 2:
Код: Выделить всё
<полный_путь_к_php>/php -f <путь_к_сайту>/export/yandex_yml.php -- --store_id=2
Вопросы по содержимому YML
В экспорте присутствуют не все товары.
Спойлер
- товар отключён;
- дата доступности товара ещё не наступила;
- товар не привязан к выбранному магазину в мультимагазине;
- у товара не указан производитель, хотя в настройках выбраны производители для экспорта;
- включена опция «У товаров есть главные категории», но главная категория товару не назначена;
- товар попал в чёрный список или не попал в белый список;
- товар не входит в выбранные категории;
- товар исключён ограничениями цены;
- включена настройка «Не выгружать товары без картинок», а у товара нет корректной картинки;
- остаток товара равен нулю, а его статус выбран в поле «Статус “Нет в наличии”»;
- товар не проходит другие условия, заданные в настройках модуля.
Для диагностики используйте предпросмотр экспорта в настройках LiveYML: он показывает причину исключения товара.
В экспорте присутствуют не все категории.
Спойлер
Если товар привязан к нескольким категориям OpenCart и главные категории не используются, в экспорт попадает одна из его привязок. На конкретный порядок выбора категории рассчитывать не следует.
В ocStore можно использовать главные категории. Включите настройку «У товаров есть главные категории», если хотите выгружать товар строго в его главную категорию. У товаров без главной категории при этом не будет выгрузки.
В YML попадают только категории, в которых есть хотя бы один товар, прошедший все условия экспорта. Родительские категории таких категорий также добавляются в файл.
Как сделать, чтобы...?
Как обновить модуль?
Спойлер
После обновления откройте настройки LiveYML и сохраните их. В мультимагазине сохраните настройки каждого магазина отдельно.
Как не экспортировать товар, у которого количество равно нулю?
Спойлер
Выберите статусы, при которых товары с нулевым остатком не должны попадать в экспорт. Чтобы исключить все товары с нулевым остатком, выберите все статусы в этом поле и сохраните настройки.
Если поле оставить пустым, товары с нулевым остатком могут попадать в YML. Их доступность определяется остальными настройками модуля.

