Нам создали сайт, а он не работает. Типичные ошибки при выборе веб-студии в разделе Статьи.
+7(910)140-50-90 (Кэп)

MODx: решение проблемы 1970. Форматирование дат по-русски.

Задача: привести в порядок даты после обновления CMS.

Имеем: все даты в анонсах статей превратились в "тыкву": 01.01.1970.

Вот как это выглядит:

Во что превратились даты: 01.01.1970

Что делать:

заменяем вызов даты, чем бы он у вас ни был, таким сниппетом (у меня он называется data-ru):

setlocale(LC_ALL, 'ru_RU.UTF-8');

$idm = (isset($idm)) ? $idm : '2288';

$format = isset($format) ? $format : "%d %b %Y %H:%M";

$art = $modx->getDocumentObject('id',$idm);
if (!isset($date)){
$date = $art['editedon'];	

}

return strftime($format, $date);

Сниппет одинаково хорошо работает и для Revolution, и для Evolution. Вызов сниппета на странице, где нужно вывести дату (в моем случае — в чанке, выводящем анонс статьи) для Evo:

[!data-ru? &idm=`[+id+]`!]	

Сниппет 01.01.1970

Получаем такую картину:

Дата исправлена

Иногда причина неприятности кроется в том, что мы пытаемся вывести пустое поле, например, незаполненное значение editedon.

В этом случае можно использовать PHx для простой проверки. Вот как это выглядит для MODx Revo:

[[+editedon:is=``:then=`[[+createdon]]`:else=`[[+editedon]]`]]`]]

Вот и всё, и чтобы эта статья была чуть побольше, добавлю ссылку на другую публикацию: MODx Cloud. Как создать сайт на MODx за 10 минут

Данный рецепт подходит и для Evolution, и для Revolution, также он полезен тем, кому нужно вывести дату на русском языке.

Ответственный за контент — Сергей.

Следующая статья: YML для староверов MODx Evolution https://capweb.ru/yml-yandex-modx-evolution.html

Предыдущая статья: Тренды логотипов 2021 https://capweb.ru/trendy-logotipov-2021.html

Позиции сайта Автогарант-НН на апрель 2014 г.
Позиции сайта veragold.ru на декабрь 2014 г.
reative
nalytics
romotion

Оставьте Вашу контактную информацию, и мы свяжемся с Вами!

Получайте горячие новости интернет-маркетинга и вечную скидку 5%!