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

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

*

john

  • ***
  • 207
  • +6/-0
    • Просмотр профиля
При стандартном выводе меню каталога использую код
<xsl:template match="udata[@method = 'getCategoryList']" mode="top-column">
   <xsl:apply-templates select="//item" mode="top-column" />
</xsl:template>

<xsl:template match="udata[@method = 'getCategoryList']//item" mode="top-column">
<a href="{@link}" umi:field-name="name" umi:delete="delete" umi:empty="&empty-section-name;"><xsl:value-of select="." /></a>
</xsl:template>
Данная конструкция работает
<xsl:value-of select="." />
А когда использую такую
<xsl:value-of select="@title" /> 
или <xsl:value-of select="@h1" />
Ничего не выводит.

*

john

  • ***
  • 207
  • +6/-0
    • Просмотр профиля
Попробовал использовать урок, вывел меню через usel
http://umihelp.ru/articles/usel-multilevel-menu/
Код из статьи работает
<xsl:value-of select="name" />
А вот так уже нет
<xsl:value-of select="h1" />

*

admin

  • *****
  • 2444
  • +172/-1
    • Просмотр профиля
прежде чем пробовать вывести какой-то параметр, проверьте есть ли он в исходном xml

Это можно сделать вставит <xsl:copy-of select="." /> в тот шаблон, в котором предполагается использование данных параметров.

Скорее всего надо использовать вывод расширенных данных (extProps). в udata и usel вывод доп данных различается (см. в документации)

*

john

  • ***
  • 207
  • +6/-0
    • Просмотр профиля
Re:Как вывести другое поле в меню каталога
« Ответ #3 : 06 Июня 2013, 22:14:00 »
Решил проблему:
<xsl:apply-templates select="document(concat('upage://', @id, '.h1'))/udata/property/value" mode="top-column"/>