Месяцы на английском языке в дате создания материала

#1 1 сентября 2016 в 22:09
В настройках: локализация — русская, формат даты я поставил j F Y в H:i но выводятся английские названия месяцев. Нашел в functions.php и поменял
  1. $eng_months = array(
  2. 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня',
  3. 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'
  4. );
но не помогает.
Подскажите, в чем ошибка?
#2 1 сентября 2016 в 23:12
Михаил

F выводит название месяца на английском языке. Это функция php. Странно было бы, если бы оно стало выводить месяц на русском.
В первой ветке есть встроенная функция конвертации номера в название месяца на русском:
  1. [code=php]// Замена числового обозначения месяца на словесное (склоненное в падеже)
  2. if ($is_full_m){
  3. $m = $_LANG['MONTH_'.$m];
  4. }else{
  5. $m = $_LANG['MONTH_'.$m.'_SHORT'];
  6. }
  7. [/code]
И перечень этих названий.
  1. $_LANG['MONTH_01'] = 'января';
  2. $_LANG['MONTH_02'] = 'февраля';
  3. $_LANG['MONTH_03'] = 'марта';
  4. $_LANG['MONTH_04'] = 'апреля';
  5. $_LANG['MONTH_05'] = 'мая';
  6. $_LANG['MONTH_06'] = 'июня';
  7. $_LANG['MONTH_07'] = 'июля';
  8. $_LANG['MONTH_08'] = 'августа';
  9. $_LANG['MONTH_09'] = 'сентября';
  10. $_LANG['MONTH_10'] = 'октября';
  11. $_LANG['MONTH_11'] = 'ноября';
  12. $_LANG['MONTH_12'] = 'декабря';
  13. $_LANG['MONTH_01_ONE'] = 'Январь';
  14. $_LANG['MONTH_02_ONE'] = 'Февраль';
  15. $_LANG['MONTH_03_ONE'] = 'Март';
  16. $_LANG['MONTH_04_ONE'] = 'Апрель';
  17. $_LANG['MONTH_05_ONE'] = 'Май';
  18. $_LANG['MONTH_06_ONE'] = 'Июнь';
  19. $_LANG['MONTH_07_ONE'] = 'Июль';
  20. $_LANG['MONTH_08_ONE'] = 'Август';
  21. $_LANG['MONTH_09_ONE'] = 'Сентябрь';
  22. $_LANG['MONTH_10_ONE'] = 'Октябрь';
  23. $_LANG['MONTH_11_ONE'] = 'Ноябрь';
  24. $_LANG['MONTH_12_ONE'] = 'Декабрь';
  25. $_LANG['MONTH_01_SHORT'] = 'янв';
  26. $_LANG['MONTH_02_SHORT'] = 'фев';
  27. $_LANG['MONTH_03_SHORT'] = 'мар';
  28. $_LANG['MONTH_04_SHORT'] = 'апр';
  29. $_LANG['MONTH_05_SHORT'] = 'мая';
  30. $_LANG['MONTH_06_SHORT'] = 'июн';
  31. $_LANG['MONTH_07_SHORT'] = 'июл';
  32. $_LANG['MONTH_08_SHORT'] = 'авг';
  33. $_LANG['MONTH_09_SHORT'] = 'сен';
  34. $_LANG['MONTH_10_SHORT'] = 'окт';
  35. $_LANG['MONTH_11_SHORT'] = 'ноя';
  36. $_LANG['MONTH_12_SHORT'] = 'дек';
В двойке подобных конверторов не обнаружил.

Если функцию в \system\libs\template.helper.php слегка переделать:
  1. function html_date($date=false, $is_time=false){
  2. $timestamp = $date ? strtotime($date) : time();
  3. $date = '<time datetime="'.date('c', $timestamp).'">'.htmlspecialchars(date(cmsConfig::get('date_format'), $timestamp)).'</time>';
  4. if ($is_time){ $date .= ' <span class="time">' . date('H:i', $timestamp). '</span>'; }
  5. $date = lang_date($date);
  6. return $date;
  7. }
то получается так:

#3 2 сентября 2016 в 12:40
Михаил, в свое время тоже интересовал этот вопрос. Вот что ответил Fuze по этому поводу…
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.