Denis24 Posted April 20, 2013 Report Share Posted April 20, 2013 Нужно добавить в файл дополнительный поля товаров.<vendor> бренд<vendorCode> артикул.А также если есть вариант в товаре то выводить отдельной позицией в xml файл как отдельный товар(но с темже фото и url) Quote Link to post Share on other sites
Solution Kasha Posted April 22, 2013 Solution Report Share Posted April 22, 2013 Находим в файле yandex.php строки $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 "); и меняем их на $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, v.sku AS variant_sku, p.id AS product_id, p.url, p.annotation, pc.category_id, i.filename AS image, b.name AS brand FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN s_brands b ON b.id = p.brand_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 "); и далее 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> "; меняем на if($p->image) print "<picture>".$simpla->design->resize_modifier($p->image, 200, 200)."</picture> "; if($p->brand) print "<vendor>".$p->brand."</vendor> "; if($p->variant_sku) print "<vendorcode>".$p->variant_sku."</vendorcode> "; print "<name>".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."</name> <description>".htmlspecialchars(strip_tags($p->annotation))."</description> </offer> "; Quote Link to post Share on other sites
Denis24 Posted May 6, 2013 Author Report Share Posted May 6, 2013 спасибо! Quote Link to post Share on other sites
Danya Posted June 20, 2013 Report Share Posted June 20, 2013 подскажите пожалуйста, как можно сделать в файле yandex.php в поле цены, когда стоит "0", выводило "под заказ" или вообще не выводило данный товар с ценой "0" ? Quote Link to post Share on other sites
Хуан Иваныч Posted July 28, 2013 Report Share Posted July 28, 2013 Находим в файле yandex.php строки $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 "); и меняем их на $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, v.sku AS variant_sku, p.id AS product_id, p.url, p.annotation, pc.category_id, i.filename AS image, b.name AS brand FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN s_brands b ON b.id = p.brand_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 "); и далее 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> "; меняем на if($p->image) print "<picture>".$simpla->design->resize_modifier($p->image, 200, 200)."</picture> "; if($p->brand) print "<vendor>".$p->brand."</vendor> "; if($p->variant_sku) print "<vendorcode>".$p->variant_sku."</vendorcode> "; print "<name>".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."</name> <description>".htmlspecialchars(strip_tags($p->annotation))."</description> </offer> "; Благодарю! Quote Link to post Share on other sites
Danya Posted July 28, 2013 Report Share Posted July 28, 2013 подскажите пожалуйста, как можно сделать в файле yandex.php в поле цены, когда стоит "0", выводило "под заказ"или вообще не выводило данный товар с ценой "0" ? Quote Link to post Share on other sites
tumanenko Posted October 18, 2013 Report Share Posted October 18, 2013 Еще в файл yml было бы неплохо выводить срок гарантии. И еще... если работаете с яндекс маркетом, то там все лучше выводить с пометкой под заказ, т.к. в списке магазинов отображается так-же, никто из покупателей особой разницы не заметит, а служба контроля мгазинов не сможет придраться к тому, что какой-то товар везут дольше 3х дней. Quote Link to post Share on other sites
Jekas Posted October 21, 2013 Report Share Posted October 21, 2013 подскажите пожалуйста, как можно сделать в файле yandex.php в поле цены, когда стоит "0", выводило "под заказ"или вообще не выводило данный товар с ценой "0" ?Если Вы разобрались можете написать как Вы сделали :-) Quote Link to post Share on other sites
Aleksey.g84 Posted August 15, 2014 Report Share Posted August 15, 2014 у меня почему - то маркет теперь выдает ошибку...вот онаОпределена кодировка: utf-8 (строка 0, столбец 0)Дата из файла: 2014-08-15 16:16 (строка 3, столбец 38)Фатальная ошибка: Ошибка парсинга XML: Error parsing XML feed: Element 'name' is not valid for content model: '(url?,buyurl?,price,oldprice?,wprice?,currencyId,xCategory?,categoryId+,market_category?,picture*,store?,pickup?,delivery?,deliveryIncluded?,local_delivery_cost?,orderingTime?,((typePrefix?,vendor,vendorCode?,model,((provider,tarifplan?))?)|(author?,name,publisher?,series?,year?,ISBN?,volume?,part?,language?,binding?,page_extent?,table_of_contents?)|(author?,name,publisher?,series?,year?,ISBN?,volume?,part?,language?,table_of_contents?,performed_by?,performance_type?,storage?,format?,recording_length?)|(artist?,title,year?,media?,starring?,director?,originalName?,country?)|(worldRegion?,country?,region?,days,dataTour*,name,hotel_stars?,room?,meal?,included,transport,price_min?,price_max?,options?)|(name,place,hall?,hall_part?,date,is_premiere?,is_kids?)|(name,vendor?,vendorCode?)),aliases?,additional*,description?,sales_notes?,promo?,manufacturer_warranty?,seller_warranty?,country_of_origin?,downloadable?,adult?,age?,barcode*,cpa?,fee?,rec?,expiry?,weight?,dimensions?,param*,related_offer*)' (строка 45, столбец 9) Quote Link to post Share on other sites
Aleksey.g84 Posted August 15, 2014 Report Share Posted August 15, 2014 Вы пытаетесь сделать выгрузку по типу "vendor.model". У такого типа товаров нет варианта name, только modelспасибо конечно, как я понимаю ошибка в этом куске файла $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, v.sku AS variant_sku, p.id AS product_id, p.url, p.annotation, pc.category_id, i.filename AS image, b.name AS brand FROM __variants v LEFT JOIN __products p ON v.product_id=p.id LEFT JOIN s_brands b ON b.id = p.brand_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 "); еще предполагаю что в этом кусочке b.name AS brandили прошу поправить меня....заранее тебе спасибо Quote Link to post Share on other sites
Aleksey.g84 Posted August 17, 2014 Report Share Posted August 17, 2014 Вопрос решил.... добавив в файл следующие параметрыпосле 128 строчки<description>".htmlspecialchars(strip_tags($p->annotation))."</description>вставил<param name='Бренд'>".htmlspecialchars(strip_tags($p->brand))."</param><param name='Размер'>".htmlspecialchars(strip_tags($p->variant_size))."</param><param name='Цвет'>".htmlspecialchars(strip_tags($p->variant_name))."</param> Всем спасибо Quote Link to post Share on other sites
Aleksey.g84 Posted August 17, 2014 Report Share Posted August 17, 2014 тему прошу не закрывать т.к. буду и дальше мудрить с файлом...уверен...кому - нибудь пригодится Quote Link to post Share on other sites
Deni Posted November 11, 2014 Report Share Posted November 11, 2014 потер Quote Link to post Share on other sites
tsybart Posted April 3, 2015 Report Share Posted April 3, 2015 (edited) как добавить название категории в offer нужно вывести в теге <name> Edited April 3, 2015 by tsybart Quote Link to post Share on other sites
Maksclub Posted September 18, 2015 Report Share Posted September 18, 2015 подскажите - как вывести еще url бренда (делаю это в отдельном файле для Директа, выгружаю бренды все ) Quote Link to post Share on other sites
Kors Posted September 19, 2015 Report Share Posted September 19, 2015 Примерно так: 1. В запросе добавить поле b.url AS brand_url 2. При выводе использовать <url>".$simpla->config->root_url.'/brands/'.$p->brand_url."</url>"; Quote Link to post Share on other sites
Maksclub Posted September 19, 2015 Report Share Posted September 19, 2015 Примерно так:1. В запросе добавить поле b.url AS brand_url2. При выводе использовать <url>".$simpla->config->root_url.'/brands/'.$p->brand_url."</url>"; Спасибо! Все получилось! Quote Link to post Share on other sites
Bulo4ka Posted February 15, 2016 Report Share Posted February 15, 2016 Добрый день, в файле дописывается после расширения изображения цифры например files/products/M2hqMPaHnzA.200x200.jpg?6c00911d006e80056ecbc6e7afe74501 как это можно убарть? потому что фото не подтягиваются в другую кмс систему Quote Link to post Share on other sites
Kors Posted February 15, 2016 Report Share Posted February 15, 2016 Токены зашиты в API - чтобы убрать, надо там дорабатывать. Либо установить разработку http://forum.simplacms.ru/topic/8424-%D1%83%D0%B1%D0%B8%D1%80%D0%B0%D0%B5%D0%BC-%D1%82%D0%BE%D0%BA%D0%B5%D0%BD-%D0%B8%D0%B7-%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D0%B0-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B5%D0%BD%D0%B8%D1%8F/ Quote Link to post Share on other sites
Bulo4ka Posted February 15, 2016 Report Share Posted February 15, 2016 Токены зашиты в API - чтобы убрать, надо там дорабатывать. Либо установить разработку http://forum.simplacms.ru/topic/8424-%D1%83%D0%B1%D0%B8%D1%80%D0%B0%D0%B5%D0%BC-%D1%82%D0%BE%D0%BA%D0%B5%D0%BD-%D0%B8%D0%B7-%D0%B0%D0%B4%D1%80%D0%B5%D1%81%D0%B0-%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B5%D0%BD%D0%B8%D1%8F/спасибо получилось, а как увеличить размер фото? Quote Link to post Share on other sites
Kors Posted February 15, 2016 Report Share Posted February 15, 2016 Если вопрос про yandex.php, то можно бы и догадаться, что через постановку нужных размеров в$simpla->design->resize_modifier($p->image, 200, 200) Quote Link to post Share on other sites
Bulo4ka Posted September 14, 2016 Report Share Posted September 14, 2016 А подскажите пожалуйста, как сделать вывод не только главного изображения в файле но и доп? и в версии 1.4 тянет почему то краткое описание а не новое, как исправить? Очень надеюсь на помощь. Quote Link to post Share on other sites
Noxter Posted September 14, 2016 Report Share Posted September 14, 2016 Фрилансеров поддерживающих первую симплу можно на пальцах посчитать. Почему не хотите обновится до последней версии? Quote Link to post Share on other sites
Bulo4ka Posted September 14, 2016 Report Share Posted September 14, 2016 Фрилансеров поддерживающих первую симплу можно на пальцах посчитать.Почему не хотите обновится до последней версии?хочу вообще уйти с симплы, вот формирую файл с товарами, и описание только краткое и фото не все((( Quote Link to post Share on other sites
Noxter Posted September 14, 2016 Report Share Posted September 14, 2016 хочу вообще уйти с симплы, вот формирую файл с товарами, и описание только краткое и фото не все(((Даже не попробовав вторую версию симплы вы решили уйти? 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.