Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”

0 Пользователей и 1 Гость просматривают эту тему.

*

AlRy

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Добрый день!
Бьюсь над правильным выводом рекомендуемых товаров в карточке товара. Выводятся только названия, хочется - название + превью заданного размера.

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Вывод превью рекомендуемых товаров
« Ответ #1 : 29 Май 2013, 16:42:10 »
Добрый день!
Бьюсь над правильным выводом рекомендуемых товаров в карточке товара. Выводятся только названия, хочется - название + превью заданного размера.


Используете стандартный шаблон? В каком формате хотите вывести рекомендуемые товары? Будет ли у них своя верстка или можно использовать верстку списка товаров?
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

AlRy

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #2 : 29 Май 2013, 16:53:49 »
Стандартный.
Формат: название, под ним превью.
Специальной верстки нет.

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Вывод превью рекомендуемых товаров
« Ответ #3 : 31 Май 2013, 07:43:25 »
В свое время решил таким способом (не очень оптимален, но работает)

<xsl:apply-templates select=".//property[@name = '&property-recommended;']" mode="recommended"/>

<xsl:template match="property[@name = '&property-recommended;']" mode="recommended">
        <hr />
        <h4>
            <xsl:text>&recommended-items;:</xsl:text>
        </h4>

        <div class="block">
            <xsl:apply-templates select="value/page" mode="short-view">
                <xsl:with-param name="cart_items" select="$cart/items" />
            </xsl:apply-templates>

            <div class="clear"></div>
        </div>
    </xsl:template>
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #4 : 31 Май 2013, 13:14:16 »
Добрый день!
Бьюсь над правильным выводом рекомендуемых товаров в карточке товара. Выводятся только названия, хочется - название + превью заданного размера.


Что в итоге у вас получилось?, куда вставляете вызовы?, как выглядят шаблоны для вывода информации о рекомендуемых товарах?

*

Kat

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #5 : 10 Июнь 2013, 23:23:38 »
тоже бьюсь над этим вопросом, способ выше у меня не работает, использую стандартный шаблон, магазин demodizzy
нашел кто-нибудь еще решение?

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Вывод превью рекомендуемых товаров
« Ответ #6 : 11 Июнь 2013, 09:19:06 »
тоже бьюсь над этим вопросом, способ выше у меня не работает, использую стандартный шаблон, магазин demodizzy
нашел кто-нибудь еще решение?

Попробуйте вместо &property-recommended; вставить название свойства, в котором хранится список рекомендуемых товаров. Если не получится - напишите в ЛС, посмотрю, что может быть не так.
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #7 : 11 Июнь 2013, 11:45:26 »
тоже бьюсь над этим вопросом, способ выше у меня не работает, использую стандартный шаблон, магазин demodizzy
нашел кто-нибудь еще решение?

Решения чего? вы хоть напишите что вы пробуете вывести, что у вас выводится, если используете стандартный demodizzy, то почему не используете его способ вывода рекомендуемых товаров?

*

AlRy

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #8 : 11 Июнь 2013, 16:44:24 »
В файл \templates\demodizzy\xslt\modules\catalog\recommended.xsl


<xsl:template match="property[@name = '&property-recommended;']" mode="rec">
      <xsl:apply-templates select="value/page" mode="rec"/>
   </xsl:template>
 
    <xsl:template match="page" mode="rec">
       
      <xsl:variable name="pho" select="document(concat('upage://',@id))//property[@name='photo']/value"/>
       <a href="{@link}"><img src="{$pho}" width="100"/></a>
      
      <a href="{@link}">
         <xsl:value-of select="name" />
                              
                 </a>    <br/>
                 
                   
   </xsl:template>

*

Kat

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #9 : 14 Июнь 2013, 18:58:43 »
Решения чего? вы хоть напишите что вы пробуете вывести, что у вас выводится, если используете стандартный demodizzy, то почему не используете его способ вывода рекомендуемых товаров?
есть интернет-магазин из переделанного стандартного demodizzy, используется стандартный вывод рекомендуемых товаров, но при этом выводятся только ссылки на эти товары, а хочется вывести ссылку с превью изображения этого товара

я только учусь делать сайты на umi, поэтому много чего еще не знаю ни в xslt, ни в самой системе, так что извиняюсь, если как-то не так спрашиваю

*

e.ioffe

  • ****
  • 369
  • +81/-2
  • Профессиональная разработка на UMI.CMS.
    • Просмотр профиля
    • Fullspace - Лучший хостинг для UMI.CMS
Re:Вывод превью рекомендуемых товаров
« Ответ #10 : 14 Июнь 2013, 20:57:42 »
Напишите в ЛС адрес сайта.
Ускорение сайта на UMI.CMS - http://speed.umispec.ru/

*

Kat

  • *
  • 6
  • +0/-0
    • Просмотр профиля

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #12 : 16 Июнь 2013, 02:33:01 »
В файл \templates\demodizzy\xslt\modules\catalog\recommended.xsl


<xsl:template match="property[@name = '&property-recommended;']" mode="rec">
      <xsl:apply-templates select="value/page" mode="rec"/>
   </xsl:template>
 
    <xsl:template match="page" mode="rec">
       
      <xsl:variable name="pho" select="document(concat('upage://',@id))//property[@name='photo']/value"/>
       <a href="{@link}"><img src="{$pho}" width="100"/></a>
      
      <a href="{@link}">
         <xsl:value-of select="name" />
                              
                 </a>    <br/>
                 
                   
   </xsl:template>

код вижу, выглядит вполне прилично, что он выводит в итоге? что из этого не так?, что ожидается?

*

admin

  • *****
  • 2421
  • +172/-1
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #13 : 16 Июнь 2013, 02:40:55 »
Решения чего? вы хоть напишите что вы пробуете вывести, что у вас выводится, если используете стандартный demodizzy, то почему не используете его способ вывода рекомендуемых товаров?
есть интернет-магазин из переделанного стандартного demodizzy, используется стандартный вывод рекомендуемых товаров, но при этом выводятся только ссылки на эти товары, а хочется вывести ссылку с превью изображения этого товара

я только учусь делать сайты на umi, поэтому много чего еще не знаю ни в xslt, ни в самой системе, так что извиняюсь, если как-то не так спрашиваю

попытаюсь описать как я понимаю ваш вопрос...

На странице товара вы выводите рекомендованные товары, которые в админке, при редактировании товара, вы вбивали в поле с name = "recommended_items". При этом сам вызов вывода значений этого поля происходит в файле /templates/demodizzy/xslt/modules/catalog/object-view.xsl , строчкой
<xsl:apply-templates select=".//property[@name = '&property-recommended;']" />

а набор шаблонов который обрабатывает данный вызов в том числе и указывает что именно выводить находиться в файле /templates/demodizzy/xslt/modules/catalog/recommended.xsl

а в этом файле нас особо интересует шаблон

<xsl:template match="property[@name = '&property-recommended;']">
      <hr />
      <h4>
         <xsl:text>&recommended-items;:</xsl:text>
      </h4>
      
      <xsl:apply-templates select="value/page" mode="short-view">      
         <xsl:with-param name="cart_items" select="document('udata://emarket/cart/')/udata/items" />
      </xsl:apply-templates>

      
      <div class="clear"></div>
   </xsl:template>

и как мы видим из выделенной строчки наши рекомендованные товары выводятся по шаблону с mode="short-view" . Этот шаблон лежит в файле /templates/demodizzy/xslt/modules/catalog/common.xsl  и по умолчанию в этом шаблоне уже выводиться картинка блоком
<a href="{@link}" class="image">
<xsl:call-template name="catalog-thumbnail">
<xsl:with-param name="element-id" select="@id" />
<xsl:with-param name="field-name">photo</xsl:with-param>
<xsl:with-param name="empty">&empty-photo;</xsl:with-param>
<xsl:with-param name="width">154</xsl:with-param>
<xsl:with-param name="height">110</xsl:with-param>
</xsl:call-template>
</a>
« Последнее редактирование: 22 Июнь 2013, 20:42:23 от admin »

*

Kat

  • *
  • 6
  • +0/-0
    • Просмотр профиля
Re:Вывод превью рекомендуемых товаров
« Ответ #14 : 22 Июнь 2013, 10:06:40 »
спасибо e.ioffe за помощь!

admin, все было понятно до предложения Этот шаблон лежит в файле /templates/kruton/xslt/modules/catalog/common.xsl
у меня что-то нет такого пути