Меняем отображение даты новости — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
Строка 2: Строка 2:
 
'''Актуально для версии 18 ревизия 85081'''
 
'''Актуально для версии 18 ревизия 85081'''
  
Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в  таблицу стилей модуля новостной ленты по адресу "\xsltTpls\modules\news\news-list.xsl". Изначально она выводит ленту примерно следующего вида:
+
Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в  таблицу стилей модуля новостной ленты по адресу "\xslt\modules\news\news-list.xsl". Изначально она выводит ленту примерно следующего вида:
  
 
[[Файл:NewsDataOld.png]]
 
[[Файл:NewsDataOld.png]]

Версия 09:25, 29 мая 2018

Актуально для версии 18 ревизия 85081

Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в таблицу стилей модуля новостной ленты по адресу "\xslt\modules\news\news-list.xsl". Изначально она выводит ленту примерно следующего вида:

NewsDataOld.png

Для того, чтобы в этой таблице изменить только дату публикации в конце шаблона необходимо добавить следующую конструкцию:

<xsl:template match="property[@name = 'publish_time']"></xsl:template>

Вызов даты публикации происходит с помощью инструкции «value-of» вида:

<xsl:value-of select="document(concat('udata://system/convertDate/', $pdate, '/(d.m.Y/)'))/udata" />

Причем, чтобы в $pdate была нужная нам отформатированная информация о дате, необходимо обратиться к макросу %system convertDate()%. Сделать это можно так

<xsl:variable name="pdate" select="value/@unix-timestamp" />

Например, окончательная запись могла бы выглядеть так:

<xsl:template match="property[@name = 'publish_time']">
    <xsl:variable name="pdate" select="value/@unix-timestamp" />
    <span style="font-size: 200%;">
        <xsl:value-of select="document(concat('udata://system/convertDate/', $pdate, '/(d/)'))/udata" />
    </span>
        <xsl:value-of select="document(concat('udata://system/convertDate/', $pdate, '/(m.Y)'))/udata" />
</xsl:template>

А результат так:

Newsdata.png