Вывод рейтингованных страниц пользователя — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
(Новая страница: «Актуально для 2.9.6 ---- '''Задача:''' вывести страницы за которые голосовал пользователь. '''Реш…»)
(нет различий)

Версия 19:18, 24 мая 2014

Актуально для 2.9.6


Задача: вывести страницы за которые голосовал пользователь.

Решение: на примере xslt шаблона - demidizzy

В шаблоне данных пользователя имеется скрытое поле с типом "ссылка на дерево", в котором сохраняются страницы за которые голосовал пользователь. К сожалению, но вывести мы сможем только сами страницы, так как информация о том когда пользователь голосовал, какую оценку выставил не сохраняется. Для вывода списка страниц за которые голосовал пользователь достаточно описать следующий шаблон в файле /templates/demodizzy/xslt/modules/users/registration.xsl

<!-- User rated pages -->	
<xsl:template name="rated_pages" >
	<div id="con_tab_rated_pages">
		<ol style="padding: 20px;">
			<xsl:apply-templates select="document(concat('uobject://',$user-id,'.rated_pages'))//value/page" mode="rated_pages" />
		</ol>
	</div>
</xsl:template>

<xsl:template match="page" mode="rated_pages" >
	<li style="padding-bottom: 3px;">
		<a href="{@link}"><xsl:value-of select="name" /></a> 
	</li>
</xsl:template>

В нужном месте, описанный шаблон необходимо будет вызвать:

<xsl:call-template name="rated_pages" />

Результат:

24-05-2014 23-16-14.png