
В настоящее время большую популярность приобрели интернет-магазины. В частности интернет магазин на базе HostCMS.
Я тоже не избежал соблазна. Передо мной стояла задача создать карточку товара по образцу на картинке. В результате карточка товара у меня приобрела такой вид: http://www.albertprim.ru/shop/plazmen_panel/32lc51/
Эта страница с описанием товара насыщена довольно большой функциональностью. Можно оставить отзыв о товаре, можно посмотреть видео о товаре, можно благодаря java-скрипту посмотреть товар в трех видах. Так же на странице выводятся скидки, если они есть, а так же выборки: товар дня, спецпредложения, хиты, сопутствующие товары, "С этим товаром покупают". Об этой последней опции и пойдет речь в этой статье.
Ниже представлена статья из форума, о сопутствующих товарах. Задача: (отображение обратной совместимости товаров) Взято: http://www.hostcms.ru/forums/22/4090/
Примечание: Здесь к коду автора я добавил еще код синхронизации данных по сопутствующему товару указанному в админке и содержащемуся в БД в таблице `shop_intermediate_table`. Если данные не совпадают, то происходит соответствующее изменение в таблице, согласно данным в админке.
Сопутствующие товары — очень удобная вещь, но механизм их назначения предполагает, по сути, двойную работу, в тех случаях, когда товары явяляются взаимно сопустствующими. Например, у нас в магазине есть некий ассортимент устройств, и набор аксессуаров для них. Было бы удобно, если на странице каждого устройства выводились бы подходящие аксессуары, а на странице каждого аксессуара — перечень устройств к которым он подходит.
Однако, для этого нужно для каждого устройства указать сопутствующими товарами его аксессуары, а потом еще для каждого аксессуара указать сопутствующими товарами те устройства к которым он подходит.
Предлагаемое мною решение позволяет сократить объем работы вдвое. Достаточно для каждого устройства указать сопутствующими товарами его аксессуары, а при отображении страницы аксессуара по тем же связям будут установлены совместимые с ним устройства. Для этого при выводе карточки товара (файл lib_6.php) мы должны написать нижепоказанный код.
|