Как форматировать даты в MODx REVOLUTION

Выводятся даты при помощи модификаторов phx аналогично функции PHP strftime. В основном взаимодействие с датами и временем ограничивается этими полями ресурса:

  • createdon
  • deletedon
  • editedon
  • publishedon
  • unpub_date

Типичные примеры:

Параметры phxВывод на страницу
Thu Aug 27, 2015Thu Apr 14, 2012
27 August 201518 April 2012
Thursday, August 27, 2015Monday, April 18, 2012
27.08.201518.04.2012

Мультиязычность:

В случаях когда требуется выводить русские названия месяцев или дней недели, многие долбаёшки - пишут сниппет, который перебирает из массива название англоязычного по ключу и переводят в рус формат. На самом деле делается это много проще: в настройках системы есть ключик под названием locale, ну соотственно для нужных контекстов просто задаем ru_RU.UTF8 или для английской версии сайта en_US.UTF8.

Все возможные параметры:

КодОписаниеВывод
%aКороткое наименование дня неделиSun
%AПолное наименование дня неделиSunday
%bКороткое наименование месяцаJan
%BПолное наименование месяцаJanuary
%cДата и время сервераWed Jan 7 00:22:10 2010
%CВек20
%dДень месяца ( формат от 01 до 31 )04
%DАналогично %m/%d/%y04/29/10
%eДень месяца ( формат от 1 до 31)3
%HЧасы ( 24-часовые, формат от 00 до 23 )15
%I ( от i )Часы ( 12-часовые, формат от 01 до 12 )09
%l ( от L )Часы ( 12-часовые, формат от 1 до 12 )5
%jДень года по счету ( формат от 001 до 366 )234
%mМесяц в году по счету ( формат от 01 до 12 )3
%MМинута ( формат от 00 до 59 )43
%nПеренос строки\n
%pam или pmam или pm
%PAM или PMAM или PM
%rАналогично %I:%M:%S %p08:23:11 PM
%RАналогично %H:%M23:11
%SСекунды ( формат от 00 до 59 )25
%tТабуляция\t
%TАналогично %H:%M:%S26:12:27
%uДень недели ( Понедельник = 1, формат 1 до 7 )3
%wДень недели ( Воскресенье = 0, формат 0 до 6 )3
%xАналогично %m/%d/%y01/25/09
%XАналогично %I:%M:%S02:58:12
%yГод, последние две цифры12
%YГод, четырехзначно2012
%Z или %zСмещение часового пояса или наименование-005 или EST
%%Литерал %%
3816