Логотип

Документация по макросам и шаблонам UMI.CMS

$topics = $this->macros('forum', 'topic');

Пример вызова

udata://forum/topic/notemplate/10/0

XML-ответ UData

<udata module="forum" method="topic" generation-time="0.051639">
  <lines>
    <item id="5" name="Кто я и зачем?" num="1" xlink:href="upage://5"
     xlink:author-href="udata://users/viewAuthor/">Зачем, куда и почему?</item>
    <item id="11" name="Где взять денег?" num="2" xlink:href="upage://11"
     xlink:author-href="udata://users/viewAuthor/">Где взять денег? Достать из кармана? Жалко. 
     Заначка тоже не вариант. Наверное, есть какой-то тру-способ?<br /></item>
    <item id="6" name="Re: Кто я и зачем?" num="3" xlink:href="upage://6"
     xlink:author-href="udata://users/viewAuthor/">Не знаю...</item>
    <item id="8" name="Новый вопрос" num="4" xlink:href="upage://8"
     xlink:author-href="udata://users/viewAuthor/">Новый вопрос</item>
  </lines>
  <total>4</total>
  <per_page>10</per_page>
</udata>

Элементы и атрибуты

<lines>

Ветвь содержащая элементы item — сообщения конференции.

<item>

Элемент, описывающий отдельное сообщение. Содержимое элемента — текст сообщения.

@id

Идентификатор сообщения.

@name

Заголовок сообщения (название).

@num

Порядковый номер сообщения.

@xlink:href

Ссылка UPage на страницу сообщения.

@xlink:author-href

Ссылка на метод, возвращающий информацию об авторе.

<total>

Общее количество сообщений в этой конференции.

<per_page>

Количество сообщений, выводящихся на страницу.

Используемые шаблоны

Макрос оперирует шаблонами, находящимися в каталоге /tpls/forum/ .

Используемые блоки шаблона

messages_block

Блок вывода списка сообщений темы конференции.

%id%

Id темы конференции.

%lines%

Список сообщений, каждое сообщение формируется по блоку шаблона messages_block_line.

%total%

Общее количество сообщений в теме.

%per_page%

Количество выводимых на страницу сообщений.

messages_block_line

Блок вывода информации об отдельном сообщении.

%id%

Id сообщения.

%name%

Имя сообщения.

%num%

Порядковый номер сообщения.

%author_id%

Id автора сообщения.

%message%

Тело сообщения.

%list-class-first%

в случае, если элемент первый, выводит "first"

%list-class-last%

в случае, если элемент последний, выводит "last"

%list-class-odd%

в случае, если элемент четный, выводит "odd"

%list-class-even%

в случае, если элемент нечетный, выводит "even"

%list-position%

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

Примеры использования

Простой вывод списка сообщений: %forum topic()%.

Вывод списка сообщений по пользовательскому шаблону: %forum topic('sample', 10)%.

Название

%forum topic()% — Выводит список сообщений текущего топика конференции.

Параметры: forum topic([template = 'default', per_page = 0, ignore_context = 0])

template

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

per_page

Количество сообщений на странице.

ignore_context

Этот параметр служит для того, чтобы выводить сообщения вне зависимости от контекста конкретного топика.

Описание

Макрос выводит список сообщений текущего топика конференции по шаблону, указанному в параметре template. Вы можете не указывать этот параметр, тогда для вывода будет использован шаблон по умолчанию — default.tpl. Количество сообщений на одной странице можно указать в параметре per_page (по умолчанию выводятся количество, указанное в настройках модуля).

Так же на результат выполнения макроса влияют следующие GET-параметры переданые в запросе страницы:

order_property

Ключ сортировки.
"ord" — порядок следования страниц в рамках родительского раздела.
"rand" — случайный порядок вывода постов.
"name" — сортировка постов по названию.
"objectid" — сортировка постов по id
Если этот параметр не указывать, то порядок вывода определяется датой публикации и порядком сортировки.

order_direction

Порядок сортировки постов на странице.
"desc" — обратный порядок, установлен по умолчанию.
"acs" — прямой порядок, от первого к последнему по выбранному в order_property параметру.

Дополнительные сведения