Меняем отображение даты новости — различия между версиями
Материал из Umicms
Sdarks (обсуждение | вклад) |
Sdarks (обсуждение | вклад) |
||
Строка 2: | Строка 2: | ||
'''Актуально для версии 18 ревизия 85081''' | '''Актуально для версии 18 ревизия 85081''' | ||
− | Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в таблицу стилей модуля новостной ленты по адресу "\ | + | Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в таблицу стилей модуля новостной ленты по адресу "\xslt\modules\news\news-list.xsl". Изначально она выводит ленту примерно следующего вида: |
[[Файл:NewsDataOld.png]] | [[Файл:NewsDataOld.png]] |
Версия 09:25, 29 мая 2018
Актуально для версии 18 ревизия 85081
Если вы хотите изменить стиль вывода даты публикации новостей в XSLT демо-шаблоне «современный», то вам необходимо внести изменения в таблицу стилей модуля новостной ленты по адресу "\xslt\modules\news\news-list.xsl". Изначально она выводит ленту примерно следующего вида:
Для того, чтобы в этой таблице изменить только дату публикации в конце шаблона необходимо добавить следующую конструкцию:
<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>
А результат так: