Логотип

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

blogs20 commentsList()

Название

%blogs20 commentsList()% — выводит список (дерево) комментариев к указанной публикации.

Параметры: blogs20 commentsList(postId[, template = 'default'])

postId

идентификатор публикации

template

tpl-шаблон вывода (по умолчанию - default.tpl). В XSLT-шаблонизаторе игнорируется.

Описание

Выводит многоуровневый список комментариев к указанной публикации.

<?=$this->render($this->macros('blogs20', 'commentsList', array($page->getId())), 'blogs20/commentsList')?>

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

udata://blogs20/commentsList/68

XML-ответ UData

<udata module="blogs20" method="commentsList" generation-time="0.013269">
  <items>
    <item cid="85">
      <name>Re: новая публикация</name>
      <content>это новый комментарий</content>
      <author_id>27245</author_id>
      <publish_time>1252415368</publish_time>
      <subcomments>
        <item cid="90">
          <name>Re: Re: новая публикация</name>
          <content>это ответ на новый комментарий</content>
          <author_id>27245</author_id>
          <publish_time>1258473670</publish_time>
          <subcomments>
            <item cid="91">
              <name>Re: Re: Re: новая публикация</name>
              <content>это ответ на ответ на новый комментарий</content>
              <author_id>27245</author_id>
              <publish_time>1258473691</publish_time>
            </item>
          </subcomments>
        </item>
      </subcomments>
    </item>
    <item cid="92">
      <name>Re: новая публикация</name>
      <content>это второй новый комментарий</content>
      <author_id>27245</author_id>
      <publish_time>1258473704</publish_time>
    </item>
  </items>
  <per_page>50</per_page>
  <total>2</total>
</udata>

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

<items>

ветвь, содержащая элементы item — комментарии первого уровня

<item>

элемент, описывающий комментарии первого уровня

@cid

идентификатор комментария

<name>

заголовок комментария

<content>

текст комментария

<author_id>

идентификатор автора комментария

<publish_time>

время публикации комментария в UNIX TIMESTAMP

<subcomments>

Ветвь, описывающая ответы на этот комментарий. Ответы на комментарий организованы также как и сами комментарии: элементы item, с вложенными элементами (name, content и остальными). Все вложенные комментарии третьего, четвертого и остальных уровней будут располагаться в соответствующих ветвях subcomments у вложенных комментариев.

<per_page>

количество комментариев, отображаемое на странице

<total>

количество комментариев первого уровня к этому посту

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

%blogs20 commentsList(68,'sample')%

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

comments_list_block

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

%lines%

указывает место, куда выводится список комментариев из блока posts_list_line

comments_list_line

выводит отдельный комментарий

%cid%

id комментария

%content%

текст комментария

%author_id%

идентификатор автора (именно автор, как во всех прочих комментариях, форуме и т.д. Этот id не является id пользователя. Используется в макросе %users viewAuthor()%)

%subcomments%

список комментариев к этому комментарию

%list-class-first%

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

%list-class-last%

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

%list-class-odd%

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

%list-class-even%

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

%list-position%

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