This is an old revision of the document!
1. Добавляем доп. свойство типа флаг в интернет магазине для товара и для группы которые хотим видеть на главной странице.
2. В свойствах товаров для группы включаем доп. свойство для вывода товара на главной для всех групп товаров.
3. Макеты сайта → Основной макет → Главная страница, добавляем код.
<?php $shop_id = 5; $limit = 9; $oGroups = Core_Entity::factory("shop_group"); $oGroups->queryBuilder() ->where("shop_groups.shop_id", "=", $shop_id) ->where("shop_groups.parent_id", "=", "0") ->orderBy("sorting"); Kad_Shop::filterShopGroups($oGroups, "Указываем тут id доп. свойства группы", 1); $aoGroups = $oGroups->findAll(); foreach($aoGroups as $oGroup) { $oShopControllerShow = new Kad_Shop_Controller_Show($oGroup->Shop); $oShopControllerShow ->subgroups(TRUE); Kad::showFilteredCatalog('bh_ВыводТовараНаГлавной', $oShopControllerShow, "Указываем тут id доп. свойства товара", 1, $limit, $oGroup->id); } ?>
1. Добавляем доп. свойство типа флаг в интернет магазине.
2. Макеты сайта → Основной макет → Главная страница, в коде макета добавить к $oShopControllerShow
метод itemsProperties(TRUE)
для того что бы доп. свойства выводились в xml.
3. В xsl шаблоне в шаблоне для товара проверяем если <xsl:if test="property_value[property_id = Указываю сюда id доп. свойства]/value = 0">
тогда выводим обычный элемент. Если же <xsl:if test="property_value[property_id = Указываю сюда id доп. свойства]/value = 1">
тогда выводим большой элемент.
<!-- Шаблон для товара --> <xsl:template match="shop_item"> <xsl:if test="property_value[property_id = Указываю сюда id доп. свойства]/value = 0"> <div class="item"> <a href="{url}" class="item_img"> <img src = "{dir}{image_small}"/> </a> <xsl:if test="shop_discount"> <div class="item_discount"> - <xsl:value-of select="format-number(shop_discount/percent, '### ##0', 'my')"/>% </div> </xsl:if> <div class="item_header"> <xsl:value-of disable-output-escaping="yes" select="name"/> </div> <div class="item_vendor_code"> <xsl:if test="marking = ''">   </xsl:if> <xsl:if test="marking != ''"> Артикул <xsl:value-of disable-output-escaping="yes" select="marking"/> </xsl:if> </div> <div class="item_price"> <xsl:value-of select="format-number(price, '### ##0', 'my')"/> <xsl:text> </xsl:text> <xsl:value-of disable-output-escaping="yes" select="/shop/shop_currency/name"/> </div> <xsl:if test="property_value[property_id = 86]/value = 1"> <div class="item_delivery"> <span class="item_delivery_img"></span> <span class="item_delivery_text">Доставка за 1-3 дня</span> </div> </xsl:if> </div> </xsl:if> <xsl:if test="property_value[property_id = Указываю сюда id доп. свойства]/value = 1"> <div class="item_big"> <a href="{url}" class="item_img_big"> <img src = "{dir}{image_large}"/> </a> <xsl:if test="shop_discount"> <div class="item_discount"> - <xsl:value-of select="format-number(shop_discount/percent, '### ##0', 'my')"/>% </div> </xsl:if> <div class="item_header_big"> <xsl:value-of disable-output-escaping="yes" select="name"/> </div> <div class="item_price_big"> <xsl:value-of select="format-number(price, '### ##0', 'my')"/> <xsl:text> </xsl:text> <xsl:value-of disable-output-escaping="yes" select="/shop/shop_currency/name"/> </div> <div class="clear"></div> <div class="item_vendor_code_big"> <xsl:if test="marking = ''">   </xsl:if> <xsl:if test="marking != ''"> Артикул <xsl:value-of disable-output-escaping="yes" select="marking"/> </xsl:if> </div> <xsl:if test="property_value[property_id = 86]/value = 1"> <div class="item_delivery_big"> <span class="item_delivery_img_big"></span> <span class="item_delivery_text_big">Доставка за 1-3 дня</span> </div> </xsl:if> </div> </xsl:if> </xsl:template>
1. Добавляем информационную систему.
2. Добавляем в неё информационные элементы.
3. Макеты сайта → Основной макет, в коде макета в нужном месте добавляем <?php Kad::showInfosystem("XSLT шаблон", id информационной системы, лимит) ?>