Вывод рейтингованных страниц пользователя
Материал из Umicms
Версия от 09:06, 2 июня 2014; Mad grant (обсуждение | вклад)
Актуально для 2.9.6
Задача: вывести страницы за которые голосовал пользователь.
Решение: на примере xslt шаблона - demodizzy
В шаблоне данных пользователя имеется скрытое поле с типом "ссылка на дерево", в котором сохраняются страницы за которые голосовал пользователь. К сожалению, но вывести мы сможем только сами страницы, так как информация о том когда пользователь голосовал, какую оценку выставил не сохраняется. Для вывода списка страниц за которые голосовал пользователь достаточно описать следующий шаблон в файле /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" />