IvanDorn Posted March 31, 2015 Report Share Posted March 31, 2015 Говорит что сопоставленный тег XML. Но он открывается: и закрывается: Подскажите как это исправить?google1.php Quote Link to post Share on other sites
Simplamarket Posted March 31, 2015 Report Share Posted March 31, 2015 Говорит что сопоставленный тег XML. Но он открывается:22.PNG и закрывается:111.PNG Подскажите как это исправить?google1.phpГугл мерчант не совсем адекватный. Попробуйте удалить пробелы между последней строкой и закрывающими тегами. P.S. А что за оффер в конце закрывается? В документации GoogleMerchant нет offer. P.P.S. На случай если решитесь приобрести платное решение. Ссылка. Quote Link to post Share on other sites
IvanDorn Posted March 31, 2015 Author Report Share Posted March 31, 2015 Убрал пробелы, но проблема осталась! Quote Link to post Share on other sites
Kors Posted March 31, 2015 Report Share Posted March 31, 2015 1. Проверять надо ВСЕ теги, а не только тот, который в строке, на которой обнаружена ошибка.2. В приложенном файле PHP не встречается offer вообще. А на картинке есть. Похоже, Вы что-то попутали...3. В приложенном файле PHP с ходу видна ошибка: тег item открывается ВСЕГДА, а закрывается ПРИ УСЛОВИИ... Quote Link to post Share on other sites
IvanDorn Posted April 1, 2015 Author Report Share Posted April 1, 2015 1. Проверять надо ВСЕ теги, а не только тот, который в строке, на которой обнаружена ошибка.2. В приложенном файле PHP не встречается offer вообще. А на картинке есть. Похоже, Вы что-то попутали...3. В приложенном файле PHP с ходу видна ошибка: тег item открывается ВСЕГДА, а закрывается ПРИ УСЛОВИИ...Вчера написал в службу поддержки и они сказали, что и как исправить.Но после этого появилась другая ошибка.Удаленный сервер вернул недопустимый код ответа. код ответа 500В чем сейчас проблема?google1.php Quote Link to post Share on other sites
Kors Posted April 1, 2015 Report Share Posted April 1, 2015 Возможно, Вы в адресе ошиблись. А может и еще десяток возможных причин быть... Если бы Вы написали ТОЧНО, при каких действиях ошибка возникла, продвинулись бы быстрее в решении... А файл по сравнении с первым совсем другой. Но грубые ошибки в нем тоже видны сразу... Quote Link to post Share on other sites
IvanDorn Posted April 1, 2015 Author Report Share Posted April 1, 2015 (edited) Возможно, Вы в адресе ошиблись. А может и еще десяток возможных причин быть...Если бы Вы написали ТОЧНО, при каких действиях ошибка возникла, продвинулись бы быстрее в решении...А файл по сравнении с первым совсем другой. Но грубые ошибки в нем тоже видны сразу...Инженеры подсказали мне, что дело в том, что в фиде было намешано 2 типа требования к фидам - Yandex и Google, а именно:сейчас Ваш фид начинается с <?xml version='1.0' encoding='UTF-8'?> <rss version='2.0' xmlns:g='http://base.google.com/ns/1.0'> <channel> А нужно, чтобы было <?xml version='1.0' encoding='UTF-8'?> и потом нужно добавить: <!DOCTYPE yml_catalog SYSTEM "shops.dtd"> При этом сказали, что фид составлен верно.Я исправил по их рекомендациям.И сейчас выдаю 500 ошибку Edited April 1, 2015 by IvanDorn Quote Link to post Share on other sites
IvanDorn Posted April 2, 2015 Author Report Share Posted April 2, 2015 Что за ерунда? <?php require_once('api/Simpla.php'); $simpla = new Simpla(); header("Content-type: text/xml; charset=UTF-8"); print (pack('CCC', 0xef, 0xbb, 0xbf)); // Заголовок print "<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE yml_catalog SYSTEM 'shops.dtd'> <yml_catalog date='".date('Y-m-d H:i')."'> <shop> <name>".$simpla->settings->site_name."</name> <company>".$simpla->settings->company_name."</company> <url>".$simpla->config->root_url."</url> "; // Валюты $currencies = $simpla->money->get_currencies(array('enabled'=>1)); $main_currency = reset($currencies); print "<currencies> "; foreach($currencies as $c) if($c->enabled) print "<currency id='".$c->code."' rate='".$c->rate_to/$c->rate_from*$main_currency->rate_from/$main_currency->rate_to."'/> "; print "</currencies> "; // Категории $categories = $simpla->categories->get_categories(); print "<categories> "; foreach($categories as $c) { print "<category id='$c->id'"; if($c->parent_id>0) print " parentId='$c->parent_id'"; print ">".htmlspecialchars($c->name)."</category> "; } print "</categories> "; // Товары $simpla->db->query("SET SQL_BIG_SELECTS=1"); // Товары $simpla->db->query("SELECT v.price, v.id as variant_id, p.name as product_name, v.name as variant_name, v.position as variant_position, p.id as product_id, p.url, p.annotation, pc.category_id, i.filename as image FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN __products_categories pc ON p.id = pc.product_id AND pc.position=(SELECT MIN(position) FROM __products_categories WHERE product_id=p.id LIMIT 1) LEFT JOIN __images i ON p.id = i.product_id AND i.position=(SELECT MIN(position) FROM __images WHERE product_id=p.id LIMIT 1) WHERE p.visible AND (v.stock >0 OR v.stock is NULL) GROUP BY v.id ORDER BY p.id, v.position "); print "<offers> "; $currency_code = reset($currencies)->code; // В цикле мы используем не results(), a result(), то есть выбираем из базы товары по одному, // так они нам одновременно не нужны - мы всё равно сразу же отправляем товар на вывод. // Таким образом используется памяти только под один товар $prev_product_id = null; while($p = $simpla->db->result()) { $variant_url = ''; if ($prev_product_id === $p->product_id) $variant_url = '?variant='.$p->variant_id; $prev_product_id = $p->product_id; $price = round($simpla->money->convert($p->price, $main_currency->id, false),2); print " <offer id='$p->variant_id' available='true'> <url>".$simpla->config->root_url.'/products/'.$p->url.$variant_url."</url>"; print " <price>$price</price> <currencyId>".$currency_code."</currencyId> <categoryId>".$p->category_id."</categoryId> "; if($p->image) print "<picture>".$simpla->design->resize_modifier($p->image, 200, 200)."</picture> "; print "<name>".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."</name> <description>".htmlspecialchars(strip_tags($p->annotation))."</description> </offer> "; } print "</offers> "; print "</shop> </yml_catalog> "; Вроде все в порядке!Но пишет что:В начале фида данных не указаны параметры кодировкиКак это не указаны???? а это что? "<?xml version='1.0' encoding='UTF-8'?> Quote Link to post Share on other sites
Simplamarket Posted April 2, 2015 Report Share Posted April 2, 2015 Что за ерунда? <?php require_once('api/Simpla.php'); $simpla = new Simpla(); header("Content-type: text/xml; charset=UTF-8"); print (pack('CCC', 0xef, 0xbb, 0xbf)); // Заголовок print "<?xml version='1.0' encoding='UTF-8'?> <!DOCTYPE yml_catalog SYSTEM 'shops.dtd'> <yml_catalog date='".date('Y-m-d H:i')."'> <shop> <name>".$simpla->settings->site_name."</name> <company>".$simpla->settings->company_name."</company> <url>".$simpla->config->root_url."</url> "; // Валюты $currencies = $simpla->money->get_currencies(array('enabled'=>1)); $main_currency = reset($currencies); print "<currencies> "; foreach($currencies as $c) if($c->enabled) print "<currency id='".$c->code."' rate='".$c->rate_to/$c->rate_from*$main_currency->rate_from/$main_currency->rate_to."'/> "; print "</currencies> "; // Категории $categories = $simpla->categories->get_categories(); print "<categories> "; foreach($categories as $c) { print "<category id='$c->id'"; if($c->parent_id>0) print " parentId='$c->parent_id'"; print ">".htmlspecialchars($c->name)."</category> "; } print "</categories> "; // Товары $simpla->db->query("SET SQL_BIG_SELECTS=1"); // Товары $simpla->db->query("SELECT v.price, v.id as variant_id, p.name as product_name, v.name as variant_name, v.position as variant_position, p.id as product_id, p.url, p.annotation, pc.category_id, i.filename as image FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN __products_categories pc ON p.id = pc.product_id AND pc.position=(SELECT MIN(position) FROM __products_categories WHERE product_id=p.id LIMIT 1) LEFT JOIN __images i ON p.id = i.product_id AND i.position=(SELECT MIN(position) FROM __images WHERE product_id=p.id LIMIT 1) WHERE p.visible AND (v.stock >0 OR v.stock is NULL) GROUP BY v.id ORDER BY p.id, v.position "); print "<offers> "; $currency_code = reset($currencies)->code; // В цикле мы используем не results(), a result(), то есть выбираем из базы товары по одному, // так они нам одновременно не нужны - мы всё равно сразу же отправляем товар на вывод. // Таким образом используется памяти только под один товар $prev_product_id = null; while($p = $simpla->db->result()) { $variant_url = ''; if ($prev_product_id === $p->product_id) $variant_url = '?variant='.$p->variant_id; $prev_product_id = $p->product_id; $price = round($simpla->money->convert($p->price, $main_currency->id, false),2); print " <offer id='$p->variant_id' available='true'> <url>".$simpla->config->root_url.'/products/'.$p->url.$variant_url."</url>"; print " <price>$price</price> <currencyId>".$currency_code."</currencyId> <categoryId>".$p->category_id."</categoryId> "; if($p->image) print "<picture>".$simpla->design->resize_modifier($p->image, 200, 200)."</picture> "; print "<name>".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."</name> <description>".htmlspecialchars(strip_tags($p->annotation))."</description> </offer> "; } print "</offers> "; print "</shop> </yml_catalog> "; Вроде все в порядке!Но пишет что:В начале фида данных не указаны параметры кодировкиКак это не указаны???? а это что? "<?xml version='1.0' encoding='UTF-8'?> Там ещё должна быть такая строка<rss xmlns:g='http://base.google.com/ns/1.0' version='2.0'> Quote Link to post Share on other sites
IvanDorn Posted April 2, 2015 Author Report Share Posted April 2, 2015 (edited) Там ещё должна быть такая строка<rss xmlns:g='http://base.google.com/ns/1.0' version='2.0'>print"<?xml version='1.0' encoding='UTF-8'?><!DOCTYPE yml_catalog SYSTEM 'shops.dtd'><rss xmlns:g='http://base.google.com/ns/1.0' version='2.0'><yml_catalog date='".date('Y-m-d H:i')."'><shop> Толку нет. тег внизу закрыл. Все равно таже проблема! Edited April 2, 2015 by IvanDorn Quote Link to post Share on other sites
Kors Posted April 2, 2015 Report Share Posted April 2, 2015 Вроде все в порядке!Но пишет что:В начале фида данных не указаны параметры кодировкиКак это не указаны???? а это что?"<?xml version='1.0' encoding='UTF-8'?> Читайте внимательно. Пишет все правильно. Кодировка у Вас указана, но НЕ в начале... Похоже, тот, кто разрабатывал Ваш скрипт, копировал бездумно, и именно В НАЧАЛЕ вставилprint (pack('CCC', 0xef, 0xbb, 0xbf)); Quote Link to post Share on other sites
IvanDorn Posted April 2, 2015 Author Report Share Posted April 2, 2015 Читайте внимательно. Пишет все правильно. Кодировка у Вас указана, но НЕ в начале... Похоже, тот, кто разрабатывал Ваш скрипт, копировал бездумно, и именно В НАЧАЛЕ вставилprint (pack('CCC', 0xef, 0xbb, 0xbf));Я удалил строку. Обновил, но Ничего не поменялось. Quote Link to post Share on other sites
vda Posted June 18, 2015 Report Share Posted June 18, 2015 http://templazilla.ru/moduli-i-dopolnenija-simpla-cms/2015/06/18/vygruzka-v-google-merchant.html Quote Link to post Share on other sites
Maksclub Posted June 19, 2015 Report Share Posted June 19, 2015 http://templazilla.ru/moduli-i-dopolnenija-simpla-cms/2015/06/18/vygruzka-v-google-merchant.html <?xml version='1.0'?> <rss xmlns:g='http://base.google.com/ns/1.0' version='2.0'> <channel> <title>мойсат</title> <url>http://мойсат</url> <description>мойсат</description> </channel> </rss> больше ничего нет ) Quote Link to post Share on other sites
Kors Posted June 19, 2015 Report Share Posted June 19, 2015 Больше и не должно быть ничего. Потому что там основной запрос изменен так, что на стандартной Simpla дает ошибку и как следствие товаров не находит...Должно, автор просто скопировал, не утруждая себя элементарной проверкой... Quote Link to post Share on other sites
ST_RU Posted June 19, 2015 Report Share Posted June 19, 2015 я глянул мельком. если не ошибаюсь в 29 строке лишний прицеп в запросеубрать надо p.market видимо там, где взяли был выбор в админке Quote Link to post Share on other sites
vda Posted June 19, 2015 Report Share Posted June 19, 2015 (edited) Переделал файл, просто данный файл был с изменениями от дополнения Выборочная выгрузка в Маркет http://templazilla.ru/moduli-i-dopolnenija-simpla-cms/2015/06/18/vygruzka-v-google-merchant.html Edited June 19, 2015 by vda Quote Link to post Share on other sites
Noxter Posted June 19, 2015 Report Share Posted June 19, 2015 Переделал файл, просто данный файл был с изменениями от дополнения Выборочная выгрузка в Маркет http://templazilla.ru/moduli-i-dopolnenija-simpla-cms/2015/06/18/vygruzka-v-google-merchant.htmlКак посмотреть с телефона? Quote Link to post Share on other sites
Kors Posted June 19, 2015 Report Share Posted June 19, 2015 Переделал файл, просто данный файл был с изменениями от дополнения Выборочная выгрузка в Маркет http://templazilla.ru/moduli-i-dopolnenija-simpla-cms/2015/06/18/vygruzka-v-google-merchant.html Вы проверяли свою вторую версию хоть чуть-чуть? Например, при дефолтной установке Simpla?Надо же хоть немного заботиться о пользователях и чувствовать ответственность, а не выкладывать абы-что в силе тяп-ляп.Крайне не рекомендуется использовать такое... Quote Link to post Share on other sites
vda Posted June 19, 2015 Report Share Posted June 19, 2015 (edited) Вы проверяли свою вторую версию хоть чуть-чуть? Например, при дефолтной установке Simpla?Надо же хоть немного заботиться о пользователях и чувствовать ответственность, а не выкладывать абы-что в силе тяп-ляп.Крайне не рекомендуется использовать такое... Да была проблемка, щас исправил, вот нормальный файл https://yadi.sk/d/S7ordzzvhMLZz Edited June 19, 2015 by vda Quote Link to post Share on other sites
vda Posted June 19, 2015 Report Share Posted June 19, 2015 Как посмотреть с телефона? Отключил мобильную версию, что то глючит Quote Link to post Share on other sites
Kors Posted June 19, 2015 Report Share Posted June 19, 2015 Да была проблемка, щас исправил, вот нормальный файл https://yadi.sk/d/S7ordzzvhMLZz Как была грубейшая ошибка, так и осталась...Все же интересно, Вы проверяете хоть простейшим образом то, что выкладываете? Quote Link to post Share on other sites
vda Posted June 19, 2015 Report Share Posted June 19, 2015 Как была грубейшая ошибка, так и осталась...Все же интересно, Вы проверяете хоть простейшим образом то, что выкладываете? https://yadi.sk/d/rM__mkQShMPeY Quote Link to post Share on other sites
Kors Posted June 19, 2015 Report Share Posted June 19, 2015 Поздравляю, с четвертого раза появилось что-то осмысленное... Quote Link to post Share on other sites
Kors Posted June 22, 2015 Report Share Posted June 22, 2015 самое забавное..пока вы спорите, я взял ПЕРВЫЙ исходник и починил.Проверил - работает сабака и выгружает. гугл аж пищит и пальцы на ногах сводит ....каждый день в пять утра. только не пользуюсь. просто проверил на домене. А в этой теме мы не спорили, а обсуждали существо дела. В результате получили1. решение для ВСЕХ,2. решение, скорее всего, качественное3. также обнаружилось, что автор заботится о своем решении - быстро и по существу реагирует на сообщения об ошибках. На этом форуме такое далеко не всегда встречается. Значит, если вдруг вылезет еще ошибка, скорее всего, тоже поправит быстро. А Вы сделали себе и для собственного удовольствия. К тому же для забавы (так как "только не пользуюсь"). И вообще что хотите сказать своим постом? То ли просто "хи-хи, ха-ха", то ли даете понять, что Вы умнее... Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.