Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Не выводится дополнительное меню в версии "Start"

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

Ответов: 4
Просмотров: 3613
Последний ответ 10 Января 2013, 10:08:04
от admin
Магазин "Современный" - добавление заголовка к левому меню каталога

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

Ответов: 4
Просмотров: 4041
Последний ответ 25 Июня 2012, 17:33:00
от manadsgn
Вывод страницы в меню с отключением вывода в карте сайта

Автор alpotemkinРаздел Макросы UMI.CMS

Ответов: 6
Просмотров: 5651
Последний ответ 03 Ноября 2011, 15:07:29
от alpotemkin
Текущая страница - добавление класса к ссылке главного меню

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

Ответов: 2
Просмотров: 3004
Последний ответ 24 Июня 2012, 14:00:10
от manadsgn
Вывод в меню только разделов с определенными свойствами

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

Ответов: 4
Просмотров: 5540
Последний ответ 24 Июня 2011, 12:58:58
от polo

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

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
вопрос по меню.
« : 20 Октября 2012, 10:29:43 »
здравствуйте. у меня меню состоит из разделов каталога. но вывожу я их через content/menu. можно ли как то сделать, чтобы подразделы, в которых нет объектов каталога не выводились в меню. т.е. надо как то сделать проверку на дочернии элементы. может кто сталкивался?

*

Rodogor

  • ***
  • 189
  • +24/-0
    • Просмотр профиля
Re:вопрос по меню.
« Ответ #1 : 21 Октября 2012, 13:59:33 »
Как вариант - свой кастом, а так можно и на xslt разрулить весьма красиво. Я кастом делал, не могу вспомнить где :)

На xslt нужно так:
1. Выполняем content/menu. Получаем ID  разделов
2. Выполняем catalog/getObjectsList/notemplate/(ID_раздела меню)/100500/0 - получаем объекты каталога.
3. Нам нужно проверить есть ли в разделе объекты. Конкретно getObjectsList возвращает total - "Общее количество объектов в указанном разделе." В других случаях можно через count()


Итого:

вызываем меню:
<xsl:apply-templates select="document('udata://content/menu/')/udata/items/item" mode="menu_catalog"/>

Описываем шаблон для обработки результата вызова макросов
<xsl:template match="item" mode="menu_catalog">
<xsl:variable name="total" select="document(concat('udata://catalog/getObjectsList/notemplate/(',@id,')/100500/0'))/udata/total"/>

<xsl:if test="$total &gt; 0">
<li><a href="@link"><xsl:value-of select="."/></a></li>
</xsl:if>
</xsl:template>

Код не проверял, писал так

*

niakriss

  • ***
  • 190
  • +2/-0
    • Просмотр профиля
Re:вопрос по меню.
« Ответ #2 : 22 Октября 2012, 09:52:39 »
спасибо огромное)) добавила еще одно условие для категорий и все заработало на отлично)