Курс 2016 года “Разработка на UMI.CMS от 0 до готового сайта”
Модуль Меню - заголовки для блоков меню их поля "Название"

Автор AxiomateriaРаздел Шаблоны XSLT

Ответов: 8
Просмотров: 3781
Последний ответ 06 Июнь 2014, 12:06:35
от admin
Многоуровневое меню PHP + Модуль меню

Автор StanlyBSVРаздел Шаблоны PHP

Ответов: 0
Просмотров: 113
Последний ответ 10 Август 2017, 20:42:18
от StanlyBSV
Модуль "Пользователи" и Loginza

Автор chiken_bobРаздел Разработка модулей

Ответов: 11
Просмотров: 6188
Последний ответ 10 Октябрь 2011, 15:33:48
от admin
Модуль "Файловый менеджер"

Автор aizulРаздел Настройка системы и модулей

Ответов: 3
Просмотров: 2168
Последний ответ 24 Апрель 2012, 21:39:01
от admin
Модуль "Отложенные товары" для UMI.CMS

Автор e.ioffeРаздел Разработка модулей

Ответов: 5
Просмотров: 3667
Последний ответ 09 Май 2014, 00:41:54
от e.ioffe

0 Пользователей и 1 Гость просматривают эту тему.

*

Sumrakrnd

  • ****
  • 311
  • +1/-0
  • Учусь «на примерах»
    • Просмотр профиля
Модуль комментарии для отзывов.
« : 28 Февраль 2017, 16:52:53 »
Доброго времени суток.

Использовала я модуль комментарии для страницы отзывы и возникло пару вопросов:

1) как вызвать пагинацию для комментариев.

2) как правильно вызвать дату публикации самого комментария. Если я просто обращаюсь к @publish_time он берет unix-timestamp, а мне надо formatted-date
часть xml комментария:
<property id="208" name="publish_time" type="date" is-important="1">
   <title>Дата публикации</title>
       <value formatted-date="27.02.2017 19:34" unix-timestamp="1488213297">Mon, 27 Feb 2017 19:34:57 +0300</value>
</property>


Вот вызов комментариев:
							<section class="container reviews">
<xsl:apply-templates select="document(concat('udata://comments/insert/', page/@id))/udata"/>
</section>
И вот:
	<xsl:template match="udata[@module = 'comments'][@method = 'insert']">
<aside>
<div class="form_review comments" umi:module="comments" umi:add-method="none" umi:region="list" umi:sortable="sortable">
<xsl:apply-templates select="add_form" mode="guest" />
</div>
</aside>

<section class="content">
<xsl:apply-templates select="total" />

<a name="comments" />
<h3>
<xsl:text>Свежие отзывы</xsl:text>
</h3>
<div class="all-reviews comments" umi:module="comments" umi:add-method="none" umi:region="list" umi:sortable="sortable">
<xsl:apply-templates select="items/item" mode="comment" />
</div>
</section>

</xsl:template>

<xsl:template match="udata[@method = 'insert']/add_form" mode="guest">
<a name="add-comment" />
<form class="form" method="post" action="{action}" id="form_for_comments">
<legend>Напишите свой отзыв</legend>
<fieldset>
<input type="text" name="author_nick" placeholder="Вас зовут" class="textinputs" />

<input type="text" name="author_email" placeholder="E-mail" class="textinputs" />

<textarea cols="48" rows="5" placeholder="Сообщение" name="comment"></textarea>
</fieldset>
<fieldset>
<input type="submit" class="button" value="Отправить" />
</fieldset>
</form>
</xsl:template>
<xsl:template match="item" mode="comment">
<div class="review item" umi:element-id="{@id}" umi:region="row">
<span class="date">
<xsl:value-of select="@publish_time" disable-output-escaping="yes" />
</span>
<div class="review_text" tabindex="0">
<span class="arrow"></span>
<h4 umi:field-name="author_id" umi:delete="delete" umi:empty="&empty;">
<xsl:value-of select="." disable-output-escaping="yes" />
</h4>
<p class="descr" umi:field-name="message" umi:delete="delete" umi:empty="&empty;">
<xsl:value-of select="." disable-output-escaping="yes" />
</p>
</div>
</div>
</xsl:template>

И такой маленький вопрос, если мне нужно будет позже подключить комментарии к новостям.
Может этот запрос на комментарии для отзывов сделать через свой mode?
« Последнее редактирование: 28 Февраль 2017, 17:02:44 от Sumrakrnd »

*

Sumrakrnd

  • ****
  • 311
  • +1/-0
  • Учусь «на примерах»
    • Просмотр профиля
Re: Модуль комментарии для отзывов.
« Ответ #1 : 28 Февраль 2017, 17:04:53 »
3) я сейчас заметила очень странный глюк.

message - это поле сообщения.
author_id - это поле с именем.

Но почему-то вместо информации из поля author_id подставляется информация из поля message  О_О

*

Sumrakrnd

  • ****
  • 311
  • +1/-0
  • Учусь «на примерах»
    • Просмотр профиля
Re: Модуль комментарии для отзывов.
« Ответ #2 : 28 Февраль 2017, 17:42:00 »
Проблему с датой решила, откопала вот такое обращение:
			<span class="date" umi:field-name="publish_time" itemprop="datePublished">
<xsl:attribute name="content">
<xsl:call-template name="format-date">
<xsl:with-param name="date" select="@publish_time" />
<xsl:with-param name="pattern" select="'Y-m-d'" />
</xsl:call-template>
</xsl:attribute>
<xsl:call-template name="format-date">
<xsl:with-param name="date" select="@publish_time" />
</xsl:call-template>
</span>

*

Sumrakrnd

  • ****
  • 311
  • +1/-0
  • Учусь «на примерах»
    • Просмотр профиля
Re: Модуль комментарии для отзывов.
« Ответ #3 : 28 Февраль 2017, 19:32:29 »
Пагинацию тоже смогла разобраться


Помогите с выводом имени пользователя из поля Т_Т

*

Sumrakrnd

  • ****
  • 311
  • +1/-0
  • Учусь «на примерах»
    • Просмотр профиля
Re: Модуль комментарии для отзывов.
« Ответ #4 : 01 Март 2017, 15:03:15 »
Ух... нашла
Оказывается есть такой запрос:

   
<xsl:apply-templates select="document(concat('udata://users/viewAuthor/', @author_id))/udata"/>