4
Как вывести характеристики товаров в прайсе?
Автор bank911, Apr 29 2012 09:44 PM
характеристики товар shopcms
Сообщений в теме: 6
#1
Отправлено 29 April 2012 - 09:44 PM
Не могу разобраться сам, почему в прайсе не выводятся дополнительные характеристики по товарам. Делал по аналогии с кратким и подробным описанием (product_detailed.tpl.html, версия 3.1.2).
Понимаю, что эти переменные просто не запрашиваются в базе. У меня всего одна доп.характеристика, надеюсь кто-то поможет - на форуме ничего похожего не нашел, так что надеюсь тема будет полезной многим!
Понимаю, что эти переменные просто не запрашиваются в базе. У меня всего одна доп.характеристика, надеюсь кто-то поможет - на форуме ничего похожего не нашел, так что надеюсь тема будет полезной многим!
#2
Отправлено 30 April 2012 - 10:47 AM
ну так добавь запрос переменных, в /core/includes/pricelist.phpПонимаю, что эти переменные просто не запрашиваются в базе.
502 Bad Gateway
#3
Отправлено 30 April 2012 - 01:00 PM
Я не совсем понимаю, как работает связка mysql + smarty + tpl.html
Но за наводку спасибо - я этого файла сразу не нашел, потому не мог вписать запрос. Сейчас хоть есть где поколупаться!
Может поможете с запросом, если есть время? Боюсь напартачить, хотя вот же в коде идет вызов из базы и запихивание в переменную:
Вот аналоггичный код вывода:
Выводит пустое пространство...
Но за наводку спасибо - я этого файла сразу не нашел, потому не мог вписать запрос. Сейчас хоть есть где поколупаться!
Может поможете с запросом, если есть время? Боюсь напартачить, хотя вот же в коде идет вызов из базы и запихивание в переменную:
$q = db_query("select s.productID, s.categoryID, s.name, s.Price, s.brief_description, s.product_code, s.default_picture, s.enabled, b.productID, t.filename FROM ".SPECIAL_OFFERS_TABLE." AS b INNER JOIN ".PRODUCTS_TABLE." AS s on (b.productID=s.productID) INNER JOIN ".PRODUCT_PICTURES." AS t on (s.default_picture=t.photoID AND s.productID=t.productID) WHERE s.enabled=1 order by b.sort_order"); while ($row = db_fetch_row($q)) { if (strlen($row["filename"])>0 && file_exists( "data/small/".$row["filename"])){ $row["default_picture"] = "small/".$row["filename"]; $row["cena"] = $row[3]; $row["Price"] = show_price($row[3]); $result[] = $row; $extra[] = GetExtraParametrs($row['productID']); } } $smarty->assign("special_offers",$result); $smarty->assign("special_offers_extra",$extra);
Вот аналоггичный код вывода:
{section name=e loop=$special_offers_extra[i]} <span style="fonte-size:14px; font-weight: bold;">{$special_offers_extra[i][e]}</span> {/section}
Выводит пустое пространство...
#4
Отправлено 30 April 2012 - 02:26 PM
Добавьте в запросМожет поможете с запросом, если есть время?
LEFT JOIN ".PRODUCTS_OPTIONS_SET_TABLE." AS pos USE (productID)
LEFT JOIN ".PRODUCTS_OPTIONS_VALUES_VARIANTS_TABLE." AS povv USE (variantID)
перед оператором WHERE
и поле povv.option_value в список с нужными в выборке полями (после SELECT).
получите для каждого варианта характеристики отдельную строку товара в прайсе.
Если цены у вариантов разные, то надо добавить еше и поле pos.price_surplus
что с этими двумя новыми полями делать, думаю. догадаетесь сами.
PS. У меня в дефолтовом pricelist.php приведенного Вами кода нет. И мне кажется, что это не совсем от прайслиста код.
PPS. Если характеристик у товара нет, то строка будет всего одна, а эти поля будут NULL. Этот момент тоже надо обрабатывать, если Вы не уверены на все сто, что у каждого товара есть хотя бы одна характеристика.
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)
#5
Отправлено 30 April 2012 - 02:33 PM
...
Спасибо за совет. Сейчас испытаем в работе и перепроверим pricelist.php
Скрипт брал в качестве уже готовой работы одного из своих клиентов - они там много перелопатили и добавили ряд возможностей. Сначала поставил в работу, а сейчас сижу ковыряю на радости
#6
Отправлено 30 April 2012 - 04:03 PM
Тогда лучше поставьте куда-нибудь дефолтовый ShopCMS и правьте прайс в нем, чтобы понять что и как, там pricelist.php маленький и простенький.Скрипт брал в качестве уже готовой работы одного из своих клиентов
http://cpu.badisoft.ru (тестовый сайт), http://badisoft.ru (модули)
#7
Отправлено 30 April 2012 - 10:19 PM
Тогда лучше поставьте куда-нибудь дефолтовый ShopCMS и правьте прайс в нем, чтобы понять что и как, там pricelist.php маленький и простенький.Скрипт брал в качестве уже готовой работы одного из своих клиентов
Там очень много непонятного для меня - когда стоило учить php я в банке работал...
Наверное стукну к разработчикам, пусть напишут запросы и дадут в готовом виде, думаю с ними в 150 рублей вложусь и не буду себе парить мозг
Спасибо Вам большое за советы!