oscarhandsome
@oscarhandsome
developer

Как вывести parent в шаблоне, xslt, umi?

Привет всем!

Бьюсь над задачей, вроде бы тривиальной не первые сутки. Если кто может подскажите, что не так?
Есть темплейт, через который я вывожу на главной с помощью макроса список каталогов:
код:
<!-- Пример для списков getCategoryList - версия 2 -->
<xsl:template match="udata[@method = 'getCategoryList']" mode="test">
		<ul>
			<xsl:apply-templates select="//item" mode="test" />
		</ul>
	</xsl:template>
        
	<xsl:template match="udata[@method = 'getCategoryList']//item" mode="test">
		<li>
				<a href="{@link}" >
					<xsl:value-of select="." />
				</a>
			<xsl:apply-templates select="document(concat('udata://catalog/getCategoryList/void/', @id, '//1/'))" mode="test1"/>
		</li>
	</xsl:template>
		
        <xsl:template match="udata[@method = 'getCategoryList']" mode="test1">
		<h3 style="color:red"><xsl:value-of select="ancestor::*"/></h3> *
                <ul>
			<xsl:apply-templates select="items" mode="test1"/>
		</ul>
	</xsl:template>
        
        <xsl:template match="udata[@method = 'getCategoryList']//item" mode="test1">
		<li>
                    <a href="{@link}" >
			<xsl:value-of select="." />
                    </a>
		</li>
	</xsl:template>


Макрос на главной
<xsl:apply-templates select="document('udata://catalog/getCategoryList/1/(shop)/23//0/?extProps=header_pic,header,title,result')/udata"/>


Я пытаюсь из первого уровня, взять пункт li и замостить его в дочерний список ul'a перед всеми li с помощью<xsl:value-of select="ancestor::*"/>
59f1febd16754174779884.png

Но что- то я делаю не так.

Пытался пройти по осям, согласно мануалу
используя parent и ancestor но, что то не так делаю.
для списков меню, у меня работает
<xsl:copy-of select="ancestor::item" />
Но выводятся еще и подпункты.
59f1ffc3d4ce0547706204.png

не понимаю, в чем загвоздка. Может из-за модов? что подуровень в упор не видит родителя?
  • Вопрос задан
  • 193 просмотра
Пригласить эксперта
Ответы на вопрос 1
VeroLom
@VeroLom
Веб-разработчик, фрилансер, UMI.CMS
Не очень понял задачу, можно подробнее?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы