skip to content
KAD::Wiki
User Tools
Log In
Site Tools
Search
Tools
Show page
Old revisions
Log In
>
You are here:
Приветствие
»
market
»
komplekt_tovarov_dlja_programmista
market:komplekt_tovarov_dlja_programmista
====== Комплект товаров ====== На странице товара вместе с основным товаром покупателю предлагается купить дополнительные товары и услуги. Такие товары можно добавить к основному установив флажок. При этом происходит пересчет основной цены. При нажатии на кнопку добавления товара в корзину, в корзину попадают сразу все выбранные товары. ===== Инструкции ===== - Если на сайте не использованы сопутствующие товары, то используем их для комплекта. Если уже использованы, то для комплекта создаем доп. свойство типа товар. - Далее в XSL шаблон МагазинТовар добавляем [[market:komplekt_tovarov_dlja_programmista:подшаблон для вывода комплекта|подшаблон для вывода комплекта]]. ''<!-- Шаблон для комплекта товаров --> <xsl:template match="associated/shop_item"> <label> <xsl:choose> <xsl:when test="property_value[tag_name='radio']/value = 1"> <input type="radio" price="{price}" name="item_radio" item_id="{@id}" value="{@id}" class="associated{../../@id} associated"><xsl:if test="property_value[tag_name='default']/value = 1"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if></input> </xsl:when> <xsl:otherwise> <xsl:if test="position() != last()"><xsl:attribute name="class">hr</xsl:attribute></xsl:if> <input type="checkbox" price="{price}" item_id="{@id}" name="item_{@id}" value="{@id}" class="associated{../../@id} associated"><xsl:if test="property_value[tag_name='default']/value = 1"><xsl:attribute name="checked">checked</xsl:attribute></xsl:if></input> </xsl:otherwise> </xsl:choose> </label> </xsl:template>'' - В подшаблон shop_item добавляем там, где нужно вывести комплект: ''<xsl:if test="count(associated/shop_item) > 0"> <div class="associated-block"> <xsl:apply-templates select="associated/shop_item"><xsl:sort select="sorting" data-type="number"/></xsl:apply-templates> <span class="hr"></span> </div> </xsl:if>'' - Подгоняем вывод под текущий сайт. Блоку с текущей ценой задаем ''id="mainprice"'', а также атрибут ''data-price="{format-number(price, '#####0', 'my')}"'' - Обработчик добавления в корзину заменяем с $.addIntoCart на $.kaddIntoCart - Добавляем товарам доп. свойства. Эти свойства нужны для управления комплектом. * "Радиокнопка" с tag_name='radio' * "По умолчанию" с tag_name='default'
market/komplekt_tovarov_dlja_programmista.1430906311.txt.gz
· Last modified: 26.06.15 в 14:55 (external edit)
Page Tools
Show page
Old revisions
Export to PDF
Rename Page
Back to top