Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Как вывести название групп характеристики объекта каталога на разных языках

Автор tkalyuginaРаздел XSLT сайт в 20 шагов на основе demodizzy

Ответов: 0
Просмотров: 2970
Последний ответ 16 Марта 2018, 09:52:24
от tkalyugina
Вывод в превью товара только фильтруемые характеристики

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 24
Просмотров: 7331
Последний ответ 08 Июля 2015, 15:20:47
от admin
Fatal Error: Call to a member function getId() on a non-object in

Автор adminmosfaРаздел Настройка системы и модулей

Ответов: 9
Просмотров: 5876
Последний ответ 24 Июля 2013, 14:38:55
от adminmosfa
Вывод характеристики товара в админске

Автор kroxaРаздел Шаблоны XSLT

Ответов: 3
Просмотров: 2746
Последний ответ 10 Ноября 2011, 01:47:08
от kroxa
Объекты каталога - характеристики коротко

Автор samРаздел Шаблоны XSLT

Ответов: 9
Просмотров: 2888
Последний ответ 11 Ноября 2014, 23:25:26
от sam

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

*

sam

  • ***
  • 216
  • +3/-1
  • "Век живи - век учись!"
    • Просмотр профиля
Здравствуйте! Просьба подсказать, как сделать так, чтобы в объектах каталога при выводе характеристик отображались только те строки (тег "tr"), где заполнено "value", а там где "value" пусто, строку не отображать? Есть понимание, что это делается примерно так:

<xsl:template match="property" mode="table">
        <xsl:if test="выводить строку, если value true">
        <tr>
        <xsl:apply-templates select="title" mode="table"/>
        <xsl:apply-templates select="value" mode="table"/>
        </tr>
         </xsl:if>
</xsl:template>

Что указать там, где "выводить строку, если value true"
Заранее спасибо!
Жизнь слишком коротка, чтобы выучить и знать всё на свете. Тем более, что мир быстро меняется, и технологии за ним тоже. Но это не повод, чтобы перестать учиться к чему-то новому. "Век живи - век учись!" Иначе жизнь будет прожита без пользы, как для себя, так и для окружающих.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
<xsl:template match="property" mode="table">
        <xsl:if test="value and not(value='')">
       <tr>
       <xsl:apply-templates select="title" mode="table"/>
       <xsl:apply-templates select="value" mode="table"/>
       </tr>
         </xsl:if>
</xsl:template>

*

sam

  • ***
  • 216
  • +3/-1
  • "Век живи - век учись!"
    • Просмотр профиля
Спасибо! Я так понимаю аналогичный xsl:if можно сделать и для цены, чтобы когда цена "0 руб" или "пусто", чтобы на месте цены было какое-то короткое сообщение.
Жизнь слишком коротка, чтобы выучить и знать всё на свете. Тем более, что мир быстро меняется, и технологии за ним тоже. Но это не повод, чтобы перестать учиться к чему-то новому. "Век живи - век учись!" Иначе жизнь будет прожита без пользы, как для себя, так и для окружающих.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
можно, только учтите что зачастую цена выводится через макрос emarket/price и уже выводя результаты этого макроса ставьте проверки

*

sam

  • ***
  • 216
  • +3/-1
  • "Век живи - век учись!"
    • Просмотр профиля
Не совсем понял. Буду признателен, если приведёте пример с проверкой блока цены, если есть конечно же.
Жизнь слишком коротка, чтобы выучить и знать всё на свете. Тем более, что мир быстро меняется, и технологии за ним тоже. Но это не повод, чтобы перестать учиться к чему-то новому. "Век живи - век учись!" Иначе жизнь будет прожита без пользы, как для себя, так и для окружающих.

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
код по тому же принципу, разговор о том, что поле "цена" обычно выводится не как property/value (то есть значение поля), а как результат макроса %emarket price()%. То есть, проверку, которую вы уже использовали надо вставлять в шаблон обрабатывающего результаты работы данного макроса.