Добавление поле бренд и артикул в файл экспорта yandex.xml Simpla

Добавление поле бренд и артикул в файл экспорта yandex.xml Simpla

Данный вид выгрузки позволяет лучше ассоциировать карточки товаров в Яндекс.Маркете.

Находим в файле 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 "".$simpla->design->resize_modifier($p->image, 200, 200)."
";

print "".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."
".htmlspecialchars(strip_tags($p->annotation))."

";

меняем на

if($p->image)
print "".$simpla->design->resize_modifier($p->image, 200, 200)."
";

if($p->brand)
print "".$p->brand."
";

if($p->variant_sku)
print "".$p->variant_sku."
";

print "".htmlspecialchars($p->product_name).($p->variant_name?' '.htmlspecialchars($p->variant_name):'')."
".htmlspecialchars(strip_tags($p->annotation))."

";

Если необходимо вывести только бренд, удалите эти строки

if($p->variant_sku)
print "".$p->variant_sku."
";

ДЕМО Поле vendor и vendorcode

Читайте также  Вывод всех товаров категории на странице товара. Simpla.
Вывод всех товаров категории на странице товара. S... открываем view/View.php регистрируем функцию: $this->design->smarty->registerPlugin("function", "get_products", array($this, 'get_products_p...
Simpla валюта через select {if $currencies|count>1} {foreach from=$currencies item=c} {if $c->enabled} id==$currency->id} selected="selected"{/if}>{$c->name|esca...
Указываем телефон в настройках Simpla... Намного удобнее указывать телефон только в одном месте, ведь если номер поменяется — удобнее поменять только в настройках в админке, че...
Выгружаем в Яндекс Маркет только первый вариант то... Иногда необходимо выгружать в Яндекс Маркет только первый вариант товара. Данное решение поможет решить эту задачу. Открываем файл yandex.php, ище...

Сохрани, чтобы не потерять