Как вывести последние комментарии на сайте в UMI CMS

Иногда на сайте возникают вопросы, которые на первый взгляд решаются очень сложно. Так было и со «всеми комментариями по сайту».

Заказчику потребовался блок на главной странице с последними комментариями. Первым делом я, по привычке, полез в документацию с целью найти стандартный макрос. Но, не тут-то было.
Нет такого функционала в базовом варианте.

Но, на самом деле, ответ был куда более очевидным: USEL.
Уже не в первый раз я с удовольствием пользуюсь этим инструментом. И пока что вполне успешно.

Итак, необходимо было сформировать выборку по следующей логике:
Получить все страницы (page) с типом данных «Комментарий», отсортированные в порядке убывания даты публикации.

В дополнение, я сделал пару бонусов:
1. Вывел только последние 3 отзыва
2. Вывел все доп поля, которые мне были нужны.

Код скрипта привожу ниже.
<?xml version="1.0" encoding="utf-8"?>
<selection>
<target result="pages">
<type id="63" />
</target>
<extended>
<groups>comment_props</groups>
</extended>
<limit page="0">3</limit>
<sort order="descending">publish_time</sort>
</selection>

ВНИМАНИЕ: 63 — это идентификатор типа комментария. Наверняка он будет таким же и в других версиях, так как это базовый тип, но на всякий случай лучше убедиться в этом.

Простой и понятный online-курс для обучения XSLT-программиста с любого базового уровня

Июл24

Один отзыв на «Как вывести последние комментарии на сайте в UMI CMS»

  1. USEL слишком медленно работает. Лучше сделать на Selector — http://goo.gl/Q5UBxu

Ваш отзыв