Я был удивлён, когда ещё в первых версиях Movable Type не обнаружил возможность выбора русифицированной даты в настройках (preferences) движка. Но удивило ещё больше то, что этот недостаток остался и сегодня. В списке выбора на данный момент 18 языков, но нет русского?
Тем не менее, это можно осуществить известным и единственным способом — достаточно лёгкой модификацией некоторых файлов, что позволяет прописывать самые разные даты с любыми окончаниями.
Для этого нужно найти файл Util.pm
, который находится в директории /lib/MT/
.
В версии 2.64 файл Util.pm
занимает почти на 10 килобайт меньше места чем 3.0D, поэтому я не стал выкладывать измененные файлы для скачки из-за разных размеров и соответственно отличий этих файлов, что может привести к неправильному функционированию Movable Type.
В Util.pm
, ближе к 900-ой строчке, появиться список с названиями дней и месяцев на различных языках. Теперь выбираем любой ненужный язык (например итальянский) и заменяем буквы "it"
на "ru"
, после чего можно спокойно заменять итальянские названия на русские. Пример:
'it' => [
[ ('Domenica', "Lunedì", "Martedì", "Mercoledì",
"Giovedì", "Venerdì", 'Sabato') ],
[ qw( Gennaio Febbraio Marzo Aprile Maggio Giugno Luglio
Agosto Settembre Ottobre Novembre Dicembre ) ],
[ qw( AM PM ) ],
"%d.%m.%y %H:%M",
"%d.%m.%y",
"%H:%M",
],
заменяем на:
'ru' => [
[ qw( воскресенье понедельник вторник среда четверг пятница суббота ) ],
[ qw( Январь Февраль Март Апрель Май Июнь
Июль Август Сентябрь Октябрь Ноябрь Декабрь ) ],
[ qw( AM PM ) ],
"%d.%m.%y %H:%M",
"%d.%m.%y",
"%H:%M",
],
Теперь прописываем language="ru"
в тэге даты. Например:
<mtentryDate format="%B %d, %Y" language="ru">
И всё будет чудесно 🙂
Как вы уже наверно догадались, можно ещё раз заменить или скопировать любой другой язык и таким же способом заменить окончания слов. Только уже нужно будет ставить не "ru"
, а любое другое значение. Таким образом можно иметь несколько дат с разными окончаниями.
Вместо того, чтобы прописывать language="ru"
для каждой даты, можно выбрать русский язык из списка в настройках (preferences) блога, но тогда нужно прописать ещё одну строку в другом файле.
Этот файл находится в директории tmpl/cms/
и называется cfg_prefs.tmpl
— шаблон настроек. Ближе к 90-ой строке находится список языков, там и нужно добавить:
<option value="ru"<tmpl_IF NAME=LANGUAGE_RU>selected="selected"</tmpl_IF>><mt_TRANS phrase="Russian"></option>
Готово.
О! Мегареспект! Как вас благодарить? =))
Уже отблагодарили 🙂