Выводим логотипы вместо названий производителей в листинге товара (VAMshop)
Если у Вас несколько производителей в категории, то в сортировке над листингом отображается фильтр по производителю. Он имеет вид списка “производитель1, произодитель2, все производители”.
Название производителя можно заменить на его логотип. Делаем это следующим образом:
Открываем файл includes/modules/default.php. Во всех sql-запросах, где есть m.manufacturers_name после
m.manufacturers_name, |
добавляем
m.manufacturers_image, |
районе 400-й строки находим блок optional Product List Filter. Заменяем
if (PRODUCT_LIST_RECURSIVE == 'true') { $filterlist_sql = "select distinct p.manufacturers_id, m.manufacturers_id as id, m.manufacturers_name as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c,".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and (p2c.categories_id = '".$current_category_id."' AND p2c.categories_id = c.categories_id OR p2c.categories_id = c.categories_id AND c.parent_id = '".$current_category_id."') order by m.manufacturers_name"; } else { $filterlist_sql = "select distinct m.manufacturers_id as id, m.manufacturers_name as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '".$current_category_id."' order by m.manufacturers_name"; |
на
if (PRODUCT_LIST_RECURSIVE == 'true') { $filterlist_sql = "select distinct p.manufacturers_id, m.manufacturers_id as id, m.manufacturers_image as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_CATEGORIES." c,".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and (p2c.categories_id = '".$current_category_id."' AND p2c.categories_id = c.categories_id OR p2c.categories_id = c.categories_id AND c.parent_id = '".$current_category_id."') order by m.manufacturers_image"; } else { $filterlist_sql = "select distinct m.manufacturers_id as id, m.manufacturers_image as name from ".TABLE_PRODUCTS." p, ".TABLE_PRODUCTS_TO_CATEGORIES." p2c, ".TABLE_MANUFACTURERS." m where p.products_status = '1' and p.manufacturers_id = m.manufacturers_id and p.products_id = p2c.products_id and p2c.categories_id = '".$current_category_id."' order by m.manufacturers_image"; |
чуть ниже
if (isset($current_category_id)) { $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'cat='.$current_category_id.'&filter_id='.$filterlist['id']).'">' . $filterlist['name'] . '</a> '; } else { $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'filter_id='.$filterlist['id']).'">' . $filterlist['name'] . '</a> '; } |
меняем на
if (isset($current_category_id)) { $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'cat='.$current_category_id.'&filter_id='.$filterlist['id']).'"><img src="images/' . $filterlist['name'] . '" ></a> '; } else { $manufacturer_sort .= '<a href="'.vam_href_link(FILENAME_DEFAULT, 'filter_id='.$filterlist['id']).'"><img src="images/' . $filterlist['name'] . '" ></a> '; } |
Теперь в фильтре листинга вместо названий производителей будут отображаться логотипы. Чтобы такой листинг выглядел красиво, картинки нужно изначально привести к единому формату.
-
пишет:Александр
А как сделать, чтобы логотип названия производителей выводился возле каждого товара в листинге товаров?
К примеру, как на tech.komus.ru/catalog.php?catID=73 (над названием товара). -
пишет:Александр
Спасибо, Евгений!
-
пишет:Александр
А каким образом сделать, чтобы странице карточки товара выводилось изображение производителя вместо тестового названия?
-
пишет:Станислав
Спасибо, Евгений!
То, что нужно.
Правда немного доработал, прописал вывод алт и тайтл к картинкам. -
пишет:Владимир
Подскажите, плз, можно ли в коде ограничить размер картинки для страницы листинга товара (на других страницах нужно, чтобы картинка была больше) и, желатнльно, как это сднлать?
-
пишет:Владимир
Спасибо!
-
пишет:Владимир
Еще вопрос! Как сделать, чтобы ссылка “Все произвоители” отображалась на новой строке (под списком произвоителей), а не справа от них!
-
пишет:Владимир
Благодарю!
-
Владимир пишет:
А можно пример посмотреть?
Интересно как быть с если на некоторые бренды не установлены логотипы(например если он не существует или его не успели загрузить)?