Сопутствующие товары

#
Сопутствующие товары
Подскажите такой момент, в магазине достаточно много товаров, у товаров есть сопутствующие товары, их может быть около 10,
мне нужно каким-то образом ограничить вывод сопутствующих товаров до 3шт на детальной карточке товара
вот мой код в xsl ТоварМагазин
<div class="other">
            <div class="heading">
               Посмотрите так же
            </div>
            <div class="products">
               <div class="row">
                  <xsl:if test="count(//same/shop_item) &gt; 0">
                     <xsl:apply-templates select="//same/shop_item" mode="view" />
                  </xsl:if>
               </div>
            </div>
         </div>

и вывод
<xsl:template match="shop_item" mode="view">
      <div class="col-md-4 col-sm-6">
         <div class="item">
            <div class="name">
               <a href="{url}" title="{name}">
                  <xsl:value-of select="name"/>
               </a>
            </div>
            <div class="image">
               <div class="outer">
                  <a href="{url}" title="{name}">
                     <xsl:choose>
                        <xsl:when test="image_small != ''">
                           <img src="{dir}{image_small}" alt="{name}" title="{name}" class="img-responsive"/>
                        </xsl:when>
                        <xsl:otherwise>
                           <img src="/images/default-image.png" alt="{name}" title="{name}"/>
                        </xsl:otherwise>
                     </xsl:choose>
                  </a>
               </div>
               
            </div>
            
            <div class="price">
               <xsl:apply-templates select="/shop/shop_currency/code" mode="same">
                  <xsl:with-param name="value" select="price" />
               </xsl:apply-templates>
            </div>
            <div class="order">
               <a href="#call" class="hover loadform">Заказать</a>
            </div>
            
            
            
            <xsl:variable name="shop_item_id" select="@id" />
            
         </div>
         
      </div>
   </xsl:template>

как мне сформировать условие чтобы выводить только 3 товара? удалять через админку не вариант
Модератор
#
Re: Сопутствующие товары
jobeat,
странная задача, но решаемая.
для модели товара пишите хук на событие shop_item.onBeforeSelectAssociatedItems, в котором будет всего одна строка
$args[0]->queryBuilder()->limit(3);
#
Re: Сопутствующие товары
hostcms писал(а):
для модели товара

добавил в modules/shop/item/model.php такой код

public function onBeforeSelectAssociatedItems($value = NULL)
   {
      $args[0]->queryBuilder()->limit(3);
   }

не  работает, или это не там нужно было менять? hostcms для меня новая цмска, пока еще разбираюсь
#
Re: Сопутствующие товары
HostDev.pw - модули для HostCMS, Telegram: @hostdev
#
Re: Сопутствующие товары
jobeat писал(а):
hostcms для меня новая цмска, пока еще разбираюсь

https://www.hostcms.ru/documentation/
E-mail: info@syrbek.ru / телега: @syrbek /skype: activexm / syrbek.ru / Поддержка сайтов / г. Москва [HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, Git, SVN, Redmine]
Модератор
#
Re: Сопутствующие товары
jobeat писал(а):
добавил в modules/shop/item/model.php такой код

зачем вы это сделали?
Авторизация